¿Hay alguna forma de crear un archivo de registro personalizado en JSL?Todos,
Estoy creando una aplicación y me gustaría permitir que los usuarios puedan obtener una vista previa de un archivo de registro personalizado junto con el script. Soy de la opinión de que este método me ayudará tanto a mí como a los usuarios en el futuro con la resolución de problemas.
Creo que una forma de escribirlo es creando una lista y escribiendo la lista como un archivo de texto. Pero estoy abierto a sugerencias y me pregunto si hay una manera mejor, más limpia y más eficiente de hacer esto.
Re: ¿Hay alguna forma de crear un archivo de registro personalizado en JSL?Hago algo similar, aquí está mi estrategia para la mayoría de los proyectos:
- Todos los scripts tienen el mismo formato de registro, lo que significa que es fácil agregarlos.
- Para algunos complementos, los registros se cargan automáticamente en una ubicación central. JMP 14 tiene un gran método para agregar todo esto.
- Uso un formato csv que también almacena otra información, como:
- Nombre y versión del script/complemento
- Versión OS/JMP
- Nombre de la función
- Para los complementos, cargo la función 'writeToLog' en un espacio de nombres para ese complemento.En la parte superior de cada script, defino ese espacio de nombres, por lo que en cualquier archivo dentro de ese complemento puedo escribir mensajes de registro usando ns:log("message", function="foo")
Re: ¿Hay alguna forma de crear un archivo de registro personalizado en JSL?me gustaría simplemente use la función Guardar archivo de texto para agregar a un archivo de registro continuo. Vea el ejemplo a continuación.
// some variables to show
x = 5;
y = 10;
z = 25;
// path to the log
logFilePath = "$TEMP/MyJmpAddin2.log";
// initialize the log in case it doesnt exist
If( !File Exists( logFilePath ), Save Text File( logFilePath, "" ) );
// function to write to the log file (with a new line character at the end)
writeToLog = Function( {str},
Save Text File(
logFilePath,
Format( Today(), "m/d/y h:m:s" ) || " - " || str || "\!N",
Mode( "append" )
)
);
writeToLog( "showing x in JMP log" );
show( x );
writeToLog( "showing y in JMP log" );
show( y );
writeToLog( "showing z in JMP log" );
show( z );
// for demonstration purposes, open the log file as plain text
Open( logFilePath, "plain text" );
Aquí está el archivo de registro resultante:
01/31/2018 1:56:23 PM - showing x in JMP log
01/31/2018 1:56:23 PM - showing y in JMP log
01/31/2018 1:56:23 PM - showing z in JMP log