El registro de rendimiento
El registro de rendimiento contiene detalles acerca de cuánto lleva ejecutar un trabajo o un servicio. Incluye información general de rendimiento para el trabajo o el servicio asó como información de rendimiento para cada etapa del flujo de datos del trabajo y el servicio. Puede utilizar esta información para identificar cuellos de botella en su flujo de datos observando el tiempo de ejecución y el tiempo de procesamiento para cada etapa. Una gran diferencia entre el tiempo de ejecución y el tiempo de procesamiento significa que la etapa pasa mucho tiempo esperando los datos de una etapa anterior. Esto puede indicar que una etapa anterior es un cuello de botella en el flujo de datos. Observe que para los receptores, una gran diferencia entre el tiempo de ejecución y el tiempo de procesamiento no indica necesariamente un problema de rendimiento ya que los receptores generalmente tienen que esperar los primeros registros del resto del flujo de datos.
Para habilitar el control de rendimiento para un trabajo o servicio, utilice el comando performancemonitor enabled set de Utilidad de administración.
El registro de rendimiento se ubica en su Spectrum™ Technology Platform servidor en la siguiente ubicación:
SpectrumLocation\server\app\repository\logs\performance.log
El registro de rendimiento contiene una fila para cada ejecución de un trabajo o servicio controlado. Es un registro de distribución que consta de un máximo de cinco archivos. Cada archivo está limitado a 10 MB en tamaño. Una vez alcanzado el límite, los datos de rendimiento más antiguos se eliminan cuando se registran nuevos datos de rendimiento.
Date Time [performance]
{
"username":"UserName",
"dataflowId":"DataflowName",
"runMode":"BatchOrRealTime",
"remote":TrueOrFalse,
"elapsedTime":Nanoseconds,
"stageInfo":[
{
"stageName":"Name",
"stageLabel":"Label",
"options":{
OptionsList
},
"recordsRead":Count,
"recordsWritten":Count,
"executionTime":Nanoseconds,
"processingTime":Nanoseconds
}
]
}
Donde:
- username
- El usuario que ejecutó el trabajo o servicio.
- dataflowID
- El nombre del servicio o trabajo como se define en Enterprise Designer.
- runMode
- Indica si es una entrada de registro para trabajo o servicio. Una de las siguientes:
- Batch
- La entrada de registro es para un trabajo.
- RealTime
- La entrada de registro es para un servicio.
- remote
- Indica si se ejecutó un trabajo o servicio en el servidor local o en un servidor remoto. Para los trabajos que contienen una o más etapas que se ejecutan en un servidor remoto, el registro de rendimiento del servidor que ejecuta el trabajo indicará que el trabajo no es remoto (un valor de "falso") mientras el registro de rendimiento del servidor remoto que ejecuta una o más de las etapas de trabajo indicará que el trabajo es remoto (un valor de "real"). Una de las siguientes:
- true
- El trabajo o servicio se ejecutó en un servidor remoto.
- false
- El trabajo o servicio se ejecutó en el servidor local.
- elapsedTime
- El tiempo en nanosegundos que le llevó ejecutar el trabajo o servicio solicitado.
- stageInfo
- Menciona información de ejecución para cada etapa del flujo de datos. Se menciona la siguiente información para cada etapa:
- stageName
- El nombre permanente de la etapa.
- stageLabel
- El nombre definido por el usuario de la etapa. La etiqueta de etapa aparece en el lienzo en Enterprise Designer.
- options
- Si no se especificó ninguna opción en el tiempo de ejecución, dichas opciones y sus ajustes se incluyen aquí.
- recordsRead
- El número total de registros que pasaron a la etapa a través de todos los puertos de entrada de la etapa.
- recordsWritten
- El número total de registros que escribió la etapa para todos sus puertos de salida.
- executiontime
- La cantidad de tiempo de cuando la etapa procesó su primer registro y cuando procesó su último registro. Esto incluye el tiempo en que la etapa estuvo inactiva mientras esperaba los datos de otras etapas en el flujo de datos.
- processingtime
- La cantidad de tiempo que la etapa pasó de manera activa procesando registros, sin incluir el tiempo que estuvo inactiva mientras esperaba otras etapas del flujo de datos.