Los equipos de DevOps deben supervisar continuamente el rendimiento de Jenkins para garantizar que se ejecute de manera eficaz. Con esto, el equipo puede realizar lo siguiente:
Puede supervisar el rendimiento de Jenkins, todos los trabajos, trabajos específicos, las Java VM y el acceso web de Jenkins para mantenerse al tanto de su rendimiento.
Recuento de nodos
node_count
records the total number of nodes.
Recuento de verificaciones de estado
health-check_count
fetches the number of health checks associated.
Duración de la verificación de estado
health-check_duration
shows the rate at which the health checks are running in seconds.
Nodos fuera de línea
nodes_offline
denotes the number of offline nodes.
Nodos en conexión
nodes_online
denotes the number of online nodes.
Recuento de proyectos
projects_count
collects the total number of projects.
Proyectos deshabilitados
projects_disabled
collects the total number of projects that have been disabled.
Proyectos habilitados
projects_enabled
collects the total number of projects that are enabled.
Tamaño de cola
queue_size
denotes the total number of jobs in queue.
Recuento de ejecutores
executor_count
shows the number of executors available for Jenkins.
Recuento libre de ejecutores
executors_free_count
shows the number of executors available for Jenkins that are not currently in use.
Recuento de ejecutores en uso
executors_inuse_count
shows the number of executors that are in use.
Colas pendientes
queues_pending
fetches the number of pending jobs in the queue.
Colas atascadas
queues_stuck
fetches the number of jobs stuck in a queue.
Colas bloqueadas
queues_blocked
fetches the number of jobs that are blocked in the queue
Trabajos en cola
jobs_in_queue
shows the number of buildable items in a queue.
Complementos activos
plugins_active
shows the number of active plugins.
Error de complementos
plugins_failed
shows the number of failed plugins.
Complementos inactivos
plugins_inactive
shows the number of inactive plugins.
Complementos con actualización
plugins_withupdate
shows the number of plugins with a pending update.
Desarrolla la duración del bloqueo
builds_blocked_duration
denotes the time taken by the jobs in blocked state in seconds.
Tiempo de creación de desarrollo
build_creation_time
denotes the time taken for the build to complete.
Desarrolla la duración de la ejecución
builds_execution_duration
shows the build execution time in seconds.
Desarrolla la duración de la cola
builds_queuing_duration
shows the build queuing time in seconds.
Desarrolla la duración de la espera
builds_waiting_duration
denotes the time the build waits in a queue in seconds.
Todas las métricas de monitoreo de trabajo de Jenkins
Recuento de trabajos
job_count
fetches the number of jobs.
Tasa de trabajos programados
jobs_scheduled_rate
denotes the rate at which the jobs are scheduled in events per minute.
Duración de los trabajos bloqueados
jobs_blocked_duration
denotes the time taken by the jobs in the build queue in the blocked state in seconds.
Duración acumulable de los trabajos
jobs_execution_time
denotes the time taken for job execution in seconds.
Tiempo de ejecución de los trabajos
jobs_execution_time
denotes the time taken for job execution in seconds.
Duración de la cola de trabajos
jobs_queuing_duration
denotes the time taken by the job in the build queue in seconds.
Duración total de los trabajos
jobs_total_duration
denotes the time taken by the job from entering the build queue to completing the build in seconds.
Duración de espera de los trabajos
jobs_waiting_duration
denotes the time the jobs spend in their quiet period in seconds.
Trabajos de Jenkins específicos que monitorean las métricas
Recuento de creaciones
build_count
fetches the number of builds in the job.
ID de la última cola de creación de trabajo
job_lastbuild_queueid
fetches the queue ID of the last build.
Duración de la última creación de trabajo
job_lastbuild_duration
denotes the time taken for the last build in milliseconds.
Duración estimada de la última creación de trabajo
job_lastbuild_estimated_duration
denotes the estimated time for the last build in milliseconds.
ID de la última creación de trabajo
job_lastbuildid
fetches the ID of the last build.
Número de última creación de trabajo
job_lastbuild_number
fetches the last build's number in the job.
Error de creación
build_failed
fetches the number of builds that failed.
Cree el éxito
build_success
fetches the number of successful builds.
Creación anulada
build_aborted
fetches the number of aborted builds.
Métricas de monitoreo de Java VM de Jenkins
Recuento bloqueado
blocked_count
denotes the number of threads that are currently blocked.
Recuento total
total_count
denotes the total thread count.
Recuento de bloqueos
deadlock_count
fetches the number of threads that have a currently detected deadlock.
Tasa de descriptor de archivo
file_descriptor_ratio
denotes the ratio of used to total file descriptors.
Memoria dinámica confirmada
heap_memory_committed
denotes the amount of heap memory, in bytes.
Memoria dinámica iniciada
heap_memory_initiated
denotes the amount of heap memory that has been newly initiated, in bytes.
Memoria dinámica máxima
maximum_heap_memory
denotes the amount of heap memory that is currently in use, in bytes.
Memoria dinámica utilizada
heap_memory_used
denotes the amount of memory outside the heap, in bytes.
Memoria no dinámica confirmada
non-heap_memory_committed
denotes the amount of memory outside the heap, in bytes.
Memoria no dinámica iniciada
non-heap_memory_initiated
denotes the amount of memory outside the heap that has been newly initiated, in bytes.
Máximo de memoria no dinámica
maximum_non-heap_memory
denotes the maximum amount of memory outside the heap that is used, in bytes.
Memoria no dinámica utilizada
non-heap_memory_used
denotes the amount of memory outside the heap that is currently in use, in bytes.
Memoria total confirmada/p>
total_memory_committed
denotes the total amount of memory, in bytes.
Memoria total iniciada
total_memory_initiated
denotes the total amount of memory that has been newly initiated, in bytes.
Memoria máxima total
total_maximum_memory
fetches the maximum amount of memory, in bytes.
Memoria total utilizada
total_memory_used
fetches the total amount of memory used, in bytes.
Nuevos subprocesos
new_threads
denotes the number of threads that have not currently started execution.
Subprocesos en ejecución
running_threads
denotes the total number of threads that are currently in execution.
Subprocesos terminados
terminated_threads
denotes the total number of threads that have completed execution.
Subprocesos suspendidos
suspended_threads
denotes the total number of threads that have suspended execution.
Subprocesos de espera
waiting_threads
denotes the total number of threads that are waiting for execution.
Métricas de monitoreo de acceso web de Jenkins
Total de solicitudes activas
total_activerequests
fetches he total number of requests that are currently active.
Solicitud incorrecta total
total_badrequest
fetches the total number of requests with HTTP/400 status code.
Código de respuesta total creado
total_responsecode_created
fetches the total number of requests with HTTP/201 status code.
Código de respuesta total prohibido
total_forbidden_responsecode
fetches the total number of requests with HTTP/403 status code.
No hay código de respuesta de contenido
noContent_responsecode
fetches the total number of requests with HTTP/204 status code.
No se encontró el código de respuesta
notFound_responsecode
fetches the total number of requests with HTTP/404 status code.
Código de respuesta sin modificar
unmodified_responsecode
fetches the total number of requests with HTTP/304 status code.
Código de respuesta correcto
success_responsecode
fetches the total number of requests with HTTP/200 status code.
Código de respuesta no informativo
non_informational_responsecode
fetches the total number of requests with a non-information status code./p>
Código de respuesta de errores del servidor
servererror_responsecode
fetches the total number of requests with HTTP/500 status code.
Servicio no disponible
service_unavailable
fetches the total number of requests with HTTP/503 status code.
Duración de la solicitud
request_duration
fetches the time taken to generate the corresponding code.
Siga las pautas que se indican a continuación:
Siga los pasos que se indican a continuación para instalar el complemento de Jenkins en su servidor Linux:
wget https://raw.githubusercontent.com/site24x7/plugins/master/jenkins_performance/jenkins_performance.py
wget https://raw.githubusercontent.com/site24x7/plugins/master/jenkins_performance/jenkins_performance.cfg
El agente ejecutará automáticamente el complemento en un plazo de cinco minutos y enviará datos de rendimiento al centro de datos de Site24x7.
[jenkins_performance]
host = < host_name>
port = < port_number>
username = < username>
password = < password>
apikey = < apikey>
Verifique la salida de los diferentes complementos de Jenkins con los pasos a continuación:
Ejecute el siguiente comando con los argumentos apropiados para comprobar la salida JSON válida.
python jenkins_performance.py --host=< host_name> --port=< port_number> --username=< username> --password=< password> --apikey=< apikey>
Ejecute el siguiente comando con los argumentos apropiados para comprobar la salida JSON válida.
python jenkins_job.py --host=< host_name> --port=< port_number> --username=< username> --password=< password> --apikey=< apikey>
Ejecute el siguiente comando con los argumentos apropiados para comprobar la salida JSON válida.
python jenkins_specific_job.py --host=< host_name> --port=< port_number> --username=< username> --password=< password> --jobname=< job_name>
Ejecute el siguiente comando con los argumentos apropiados para comprobar la salida JSON válida.
python jenkins_jvm.py --host=< host_name> --port=< port_number> --username=< username> --password=< password> --apikey=< apikey>
Ejecute el siguiente comando con los argumentos apropiados para comprobar la salida JSON válida.
python jenkins_web.py --host=< host_name> --port=< port_number> --username=< username> --password=< password> --apikey=< apikey>
Puede contribuir a nuestros complementos existentes y compartir sugerencias o comentarios en nuestra comunidad.