Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19
Descripción de archivos de historial
|
Nombre de campo | Descripción |
sequence_number | Número de operación único y secuencial en la sesión de registro |
time | Fecha y hora usando el formato ISO 8601: 'YYYY-MM-DDTHH:MM:SS.mmm' |
systemid | System ID |
component | Firma de componente (por ejemplo, '4SQLS' o 'dbmg') |
process_info_index | Corresponde al campo "índice" del historial 4DRequestsLog_ProcessInfo.txt log, y permite vincular una solicitud a un proceso. |
request | Solicita ID en C/S o cadena de mensajes para peticiones SQL o mensajes LOG EVENT |
bytes_in | Número de bytes recibidos |
bytes_out | Número de bytes enviados |
server_duration | exec_duration | Depende de dónde se genere el historial:
|
write_duration | Tiempo tomado en milisegundos para enviar la petición:
|
task_kind | Apropiativo o cooperativo (respectivamente 'p' o 'c') |
rtt | Tiempo estimado en microsegundos para que el cliente envíe la solicitud y el servidor la reconozca. A a D y E a H en la imagen a continuación.
|
Flujo de petición:
Este archivo de historial registra la información sobre cada proceso creado en la máquina 4D Server o la máquina 4D remota que ejecutó el comando (excluyendo las solicitudes Web).
Cómo iniciar este archivo de historial:
SET DATABASE PARAMETER(4D Server log recording;1) //del lado del servidor
SET DATABASE PARAMETER(Client Log Recording;1) //del lado remoto
Nota: esta instrucción también inicia el archivo de historial 4DRequestsLog.txt (ver arriba).
Encabezados
Este archivo comienza con los siguientes encabezados:
Contenido del archivo
Para cada proceso, los siguientes campos se registran:
Nombre del campo | Descripción |
sequence_number | Número de operación secuencial y único en la sesión de historial |
time | Fecha y hora utilizando el formato ISO 8601 "YYYY-MM-DDTHH:MM:SS.mmm" |
process_info_index | Número de proceso secuencial y único |
CDB4DBaseContext | UUID del contexto de base del componente DB4D |
systemid | ID sistema |
server_process_id | ID del proceso en el servidor |
remote_process_id | ID del proceso en el cliente |
process_name | Nombre del proceso |
cID | Identificador de la conexión 4 |
uID | Identificador del cliente 4D |
IP | Dirección IPv4/IP v6 del cliente |
host_name | Nombre del host del cliente |
user_name | Nombre de conexión de usuario en el cliente |
connection_uuid | Identificador UUID de proceso de conexión |
server_process_unique_id | ID único del proceso en el servidor |
Este archivo de historial registra cada solicitud HTTP y cada respuesta en modo crudo. La totalidad de las peticiones, incluidos los encabezados, se registran; Opcionalmente, se pueden registrar también las partes del cuerpo.
Cómo iniciar este registro:
WEB SET OPTION(Web debug log;wdl enable without body) //otros valores están disponibles
Los siguientes campos se registran para las peticiones y las respuestas:
Nombre del campo | Descripción |
SocketID | ID del socket utilizado para la comunicación |
PeerIP | Dirección IPv4 del host (cliente) |
PeerPort | Puerto utilizado por el host (cliente) |
TimeStamp | Timestamp en milisegundos (desde el inicio del sistema) |
ConnectionID | UUID de la conexión (UUID de VTCPSocket utilizado para la comunicación) |
SequenceNumber | Número de operación secuencial y único en la sesión de historial |
Este archivo de historial registra cada evento que ocurre al nivel del lenguaje de 4D. El modo estándar ofrece una vista básica de los eventos.
Cómo iniciar este archivo de historial:
SET DATABASE PARAMETER(Debug Log Recording;2) //estándar, todos los procesos
SET DATABASE PARAMETER(Current process debug log recording;2) //estándar, proceso actual únicamente
Los siguientes campos se registran para cada evento:
Columna # | Descripción |
1 | Número de operación secuencial y único en la sesión de historial |
2 | Fecha y hora en formato ISO 8601 (YYYY-MM-DDThh:mm:ss.mmm) |
3 | ID proceso (p=xx) e ID único del proceso (puid=xx) |
4 | Nivel de pila |
5 | Puede ser Nombre de comando/Nombre de método/Mensaje/Info Task Start Stop /Nombre del Plugin, evento o retrollamada/UUID de la conexión |
6 | Tiempo necesario para la operación en el historial en milisegundos |
Este archivo de historial registra cada evento generado a nivel del lenguaje de 4D en un formato tabulado y compacto que incluye información adicional (en comparación con el formato estándar).
Cómo iniciar este archivo de historial:
SET DATABASE PARAMETER(Debug Log Recording;2+4) //formato tabular extendido, todos los procesos
SET DATABASE PARAMETER(Current process debug log recording;2+4) //extendido, proceso actual únicamente
Los siguientes campos se registran para cada evento:
Columna # | Nombre del campo | Descripción | |||||||||||||
1 | sequence_number | Número de operación secuencial y único en la sesión de historial | |||||||||||||
2 | time | Fecha y hora en formato ISO 8601 (YYYY-MM-DDThh:mm:ss.mmm) | |||||||||||||
3 | processID | ID del proceso | |||||||||||||
4 | unique_processID | ID único del proceso | |||||||||||||
5 | stack_level | Nivel de pila | |||||||||||||
6 | operation_type | Tipo de operación de registro. Este valor puede ser un valor absoluto:
| |||||||||||||
7 | operation | Puede representar (dependiendo del tipo operación): | |||||||||||||
8 | operation_parameters | Parámetros pasados a los comandos, métodos o plugins | |||||||||||||
9 | form_event | Evento formulario si lo hay; Vacío en otros casos (suponga que la columna se utiliza cuando el código se ejecuta en un método formulario u objeto) | |||||||||||||
10 | stack_opening_sequence_number | Sólo para los niveles de pila de cierre: número de secuencia del nivel de pila de apertura correspondiente | |||||||||||||
11 | stack_level_execution_time | Sólo para los niveles de cierre de pila: Tiempo transcurrido en micro segundos de la acción registrada actual (ver las últimas columnas en las líneas 123 y 124 en el historial arriba) |
Este archivo de registro registra muchos eventos relacionados con el funcionamiento interno de la aplicación y es legible para los humanos. Puede incluir información personalizada en este archivo utilizando el comando LOG EVENT.
Cómo iniciar este registro:
SET DATABASE PARAMETER(Diagnostic log recording;1) //iniciar el registro
Los siguientes campos se registran para cada evento:
Nombre de los campos | Descripción |
sequenceNumber | Número de operación único y secuencial en la sesión de registro |
timestamp | Fecha y hora en formato ISO 8601 (YYYY-MM-DDThh:mm:ss.mmm) |
loggerID | Opcional |
componentSignature | Opcional - firma interna del componente |
messageLevel | Información, Advertencia, Error |
message | Descripción de la entrada de registro |
Dependiendo del evento, también se pueden registrar otros campos, como la tarea, el socket, etc.
Este archivo de historial registra cada intercambio entre la aplicación 4D y el servidor de correo (SMTP, POP3, IMAP) que se ha sido iniciado por lo siguientes comandos:
Los archivos de historial pueden producirse en dos versiones:
Para iniciar este historial:
SET DATABASE PARAMETER(SMTP Log;1) //iniciar el historial SMTP OR
SET DATABASE PARAMETER(POP3 Log;1) //iniciar el historial POP3 OR
SET DATABASE PARAMETER(IMAP Log;1) //iniciar el historial IMAP
Para iniciar este historial:
$server:=New object
...
//SMTP
$server.logFile:="MySMTPAuthLog.txt"
$transporter:=SMTP New transporter($server)
// POP3
$server.logFile:="MyPOP3AuthLog.txt"
$transporter:=POP3 New transporter($server)
//IMAP
$server.logFile:="MyIMAPAuthLog.txt"
$transporter:=IMAP New transporter($server)
Para cada petición, se registran los siguientes campos:
Columna # | Descripción |
1 | Número de operación único y secuencial en la sesión de registro |
2 | Fecha y hora en formato RFC3339 (aaaa-mm-ddThh:mm:ss.ms) |
3 | ID de proceso 4D |
4 | ID de proceso único |
5 |
|
datos intercambiados entre el servidor y el cliente, comenzando por "S <" (datos recibidos del SMTP, POP3, o servidor IMAP) o "C >" (datos enviados por el cliente IMAP): lista de modo de autenticación enviada por el servidor y modo de autenticación seleccionado, todo error informado por el SMTP,POP3, o servidor IMAP, la información del encabezado del correo enviado (solo la versión estándar) y si el correo se guarda en el servidor, or |
Este registro registra cada solicitud ORDA enviada desde una máquina remota. Puede enviarlo a la memoria o a un archivo en el disco. El nombre y la ubicación de este archivo de registro son su elección.
Cómo iniciar este registro:
//para ser ejecutado en una máquina remota
ds.startRequestLog(File("/LOGS/ordaLog.txt")) //también se puede enviar a la memoria
Nota: si desea utilizar el número de secuencia único en el registro de solicitud de ORDA, debe activarlo:
//para ser ejecutado en una máquina remota
SET DATABASE PARAMETER(Client Log Recording;1) //para habilitar el número de secuencia de registro
ds.startRequestLog(File("/LOGS/ordaLog.txt")) //también se puede enviar a la memoria
SET DATABASE PARAMETER(Client Log Recording;0) //deshabilitar el número de secuencia
Los siguientes campos se registran para cada petición:
Nombre del campo | Descripción | Ejemplo |
sequenceNumber | Número de operación único y secuencial en la sesión de registro | 104 |
url | URL de petición ORDA del cliente | "rest/Persons(30001)" |
startTime | Fecha y hora de inicio con el formato ISO 8601 | "2019-05-28T08:25:12.346Z" |
endTime | Fecha y hora de finalización utilizando el formato ISO 8601 | "2019-05-28T08:25:12.371Z" |
duration | Duración de procesamiento del cliente (ms) | 25 |
response | Objeto de respuesta del servidor | {"status":200,"body":{"__entityModel":"Persons",[...] |
Producto: 4D
Tema: Archivos de depuración
Modificado: 4D v17 R5
Modificado: 4D v17 R6
Modificado: 4D v18 R2
Modificado: 4D v18 R3
Modificado: 4D v19
Manual de Diseño ( 4D v19)