Launch Logger: realiza un seguimiento de cada vez que se inicia JMP en una máquinaRegistrador de lanzamiento Complemento JMP, versión 1
Escrito por Jeff Perkinson, jeff.Perkinson@jmp.com
Launch Logger crea un pequeño archivo de texto que contiene detalles del sistema cada vez que se inicia JMP.
Estos archivos de texto se pueden usar para rastrear cuántas veces se inicia JMP en una máquina determinada.
Si un administrador del sistema recopila todos estos archivos en una colección de máquinas, el administrador puede realizar un seguimiento de los lanzamientos de JMP en una organización.
Launch Logger no tiene interfaz de usuario. Utiliza addinload.jsl para recopilar información del sistema y escribirla en el archivo de texto.
El archivo de texto se almacena en el directorio definido por el Variable de ruta JMP USER_APPDATA. La ubicación a la que apunta esta variable depende del producto JMP y del sistema operativo.
- Windows (JMP): C:/Users//AppData/Roaming/SAS/JMP//
- Windows (JMP Pro): C:/Users//AppData/Roaming/SAS/JMPPro//
- Macintosh: /Usuarios//Library/Application Support/JMP//
Los archivos en este directorio se nombran usando el patrón:
nombre de host _ fecha _ tiempo .TXT
donde nombre de host es el nombre de la máquina que ejecuta JMP y fecha y hora son la fecha y hora de lanzamiento.
La información recopilada en los archivos de texto es:
Bitness => 64 bits o 32 bits
Información de compilación => la fecha y la hora de compilación, ya sea una compilación de lanzamiento o de depuración, y el nombre del producto en una cadena delimitada por comas
Fecha => la fecha y hora en que se lanzará JMP
Anfitrión => Mac o Windows
nombre de host => el valor de la variable de entorno COMPUTERNAME (Windows) o HOSTNAME (Mac)
JMP Versión => la versión de JMP que se está lanzando
nombre del producto => el nombre del producto JMP que se está ejecutando, Pro o Standard
Nombre de usuario => el valor de la variable de entorno USERNAME (Windows) o USER (Macintosh)
El archivo de texto se escribe con una sintaxis que facilita la lectura de estos valores en una matriz asociativa en JMP para agregar los registros.
Los contenidos de addinload.jsl en Launch Logger son:
info = Associative Array();
info["JMP Version"] = JMP Version();
info["Build Information"] = Build Information();
info["Date"] = Format( Today(), "m/d/y h:m:s" );
info["Host"] = If( Host is( Mac ),
"Mac",
"Windows"
);
info["Bitness"] = If( Host is( Bits32 ),
"32-bit",
"64-bit"
);
info["Username"] = If( Host is( Windows ),
Get Environment Variable( "USERNAME" ),
Get Environment Variable( "USER" )
);
info["Product Name"] = JMP Product Name();
info["Hostname"] = If( Host is( Windows ),
Get Environment Variable( "COMPUTERNAME" ),
Get Environment Variable( "HOSTNAME" )
);
dir = "$USER_APPDATA/JMPLaunchLogger/";
filename = dir || info["Hostname"] || "_" || Format( Today(), "ddMONYYYY" ) || "_" || Char( Hour( Today() ) ) || Char( Minute( Today() ) ) ||
Char( Second( Today() ) ) || ".txt";
If( !Directory Exists( dir ),
dir_create_success = Try( Create Directory( dir ), exception_msg )
);
Save Text File( filename, Char( info ) );
Launch Logger crea un pequeño archivo de texto que contiene detalles del sistema cada vez que se inicia JMP.
Estos archivos de texto se pueden usar para rastrear cuántas veces se inicia JMP en una máquina determinada.
UtilidadesRe: Launch Logger: realiza un seguimiento cada vez que se inicia JMP en una máquinaBueno, si el complemento no está allí, no sorprende que no esté registrando nada. 
En cuanto a cómo podría desaparecer el complemento, eso es algo que probablemente deba abordar con su departamento de TI para ver si están limpiando el directorio de perfil donde están instalados los complementos, o si tiene varios directorios de perfil. .
Re: Launch Logger: realiza un seguimiento cada vez que se inicia JMP en una máquinaHola Jeff,
Nada en la ventana de registro (Ctrl+Shift+L).
¿Menos de la mitad de los usuarios están registrados en este momento en toda la empresa?
Me di cuenta de que el complemento donde tenía el script incrustado extrañamente ha desaparecido de mi PC.
Tras la reinstalación, mis lanzamientos de JMP ahora se registran nuevamente.
¿Alguna idea de cómo puede desaparecer un complemento?
- Felipe
Re: Launch Logger: realiza un seguimiento cada vez que se inicia JMP en una máquina@jpol , eso es extraño.
Comience mirando la ventana de registro para ver si hay algún mensaje allí inmediatamente después de iniciar JMP.
Re: Launch Logger: realiza un seguimiento cada vez que se inicia JMP en una máquinaHola Jeff,
¿Alguien ha informado que el registrador de lanzamientos registra progresivamente menos y menos lanzamientos a medida que pasa el tiempo?
Revisé esta mañana y vi que cuando inicié JMP no había ningún registro (no se almacenó ningún archivo de texto, como antes). Parece que mis actividades no se han registrado durante un par de semanas más o menos.
Mi suposición es que algún paquete de actualización de MS ha causado que esto suceda, pero no puedo estar seguro. También noté que algunos usuarios nunca se registran.
¿Alguna sugerencia de por dónde puedo empezar a investigar?
Atentamente,
Felipe
Re: Launch Logger: realiza un seguimiento cada vez que se inicia JMP en una máquinaGracias Jeff y Don,
Esto funciona muy bien y, como administrador local, puedo ver fácilmente la información de compilación y la versión de JMP utilizada por cada usuario.
Atentamente,
Felipe
Re: Launch Logger: realiza un seguimiento cada vez que se inicia JMP en una máquina@jpol ,
Debo admitir que me pillaste un poco corto. Pensé que estaba siendo inteligente al almacenar la información de registro como una matriz asociativa. Funciona bien como un formato de almacenamiento de autodocumentación y permite agregar otra información a los registros en el futuro y, presumiblemente, aún poder analizar archivos mixtos.
Sin embargo, su consulta me hizo darme cuenta de que no es tan sencillo obtener un montón de matrices asociativas en una tabla de datos como esperaba.
Con aprecio a @DonMcCormack , aquí hay un código que creará una tabla de datos a partir de una carpeta de archivos de registro.
tableFromAAList = Function({inList},{Default Local},
tblRef = New Table("Data from List of AAs");
For(i=1,i<=N Items(inList),i++,
nextKeys = inList[i] << Get Keys;
tblRef << Add Row(1);
For(j=1,j<=N Items(nextKeys),j++,
nextVal = inList[i] << Get Value(nextKeys[j]);
Try(
Column(tblRef,nextKeys[j])[i] = nextVal;
,//ON ERROR
tblRef << New Column(nextKeys[j],Character);
Column(tblRef,nextKeys[j])[i] = nextVal;
);
)
);
tblRef << Delete Columns("Column 1");
);
logfiles = Files In Directory( "./Logs" );
logs = {};
For( i = 1, i <= N Items( logfiles ), i++,
Insert Into( logs, Parse( Load Text File( "./Logs/" || logfiles[i] ) ) )
);
tableFromAAList(logs);
JMP 14 puede hacer esto más fácil.
Re: Launch Logger: realiza un seguimiento cada vez que se inicia JMP en una máquinaHola Jeff,
Me gustaría usar el complemento Launch Logger para controlar la cantidad de veces que se lanza JMP en toda la empresa.
He tenido éxito en la creación de archivos de registro.
Lamentablemente, no estoy familiarizado con las matrices asociativas y, por lo tanto, me resulta bastante difícil extraer y concatenar los archivos.
¿Podría proporcionar un par de pistas?
Gracias,
Felipe
Re: Launch Logger: realiza un seguimiento cada vez que se inicia JMP en una máquina@ashley_prince , no, esto contará los lanzamientos desde cualquier versión de JMP en la que esté instalado.
Re: Launch Logger: realiza un seguimiento cada vez que se inicia JMP en una máquinaHola Jeff,
Esto es increíble, ¡gracias por compartir! ¿Puede confirmar que esto solo cuenta los lanzamientos de las instalaciones de licencias anuales?
¡Gracias!