Exposing metrics to monitor your workload

To control and monitor your workload, you can have HCL Universal Orchestrator expose a number of metrics that provide insight into the state, health, and performance of your workload environment and infrastructure.

Collecting these metrics can be useful for many reasons:
  • Generating alerts and addressing problems before they actually occur.
  • Monitoring and analyzing trends
  • Comparing historical data
  • Detecting anomalies

HCL Universal Orchestrator exposed metrics shows a list of the metrics retrieved, along with their description.

See Accessing and visualizing the metrics to find out where and how to find the metrics.

HCL Universal Orchestrator exposed metrics

For more information about microservices, see Server microservices.

Table 1. Agent manager metrics
Metric name Description
application_uno_agentmanager_command_queue_count_number The number of commands waiting to be sent to the agent. All pods provide the same values.
application_uno_agentmanager_task_cleanup_notification_seconds_max Time in seconds of Agent Manager activity to cleanup internal notifications. Each pod provides its own values.
application_uno_agentmanager_task_cleanup_notification_seconds Time in seconds of Agent Manager activity to cleanup internal notifications. Each pod provides its own values.
application_uno_agentmanager_cloudexecutor_connected_number Number of Cloud Task Launchers currently connected. Each pod provides its own values.
application_uno_message_process_delay_milliseconds Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_delay_milliseconds_max Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_agentmanager_command_queue_lag_milliseconds Time in ms between commands arrival in agent manager and its delivery to the agent. Each pod provides its own values.
application_uno_agentmanager_command_queue_lag_milliseconds Time in ms between commands arrival in agent manager and its delivery to the agent. Each pod provides its own values.
application_uno_agentmanager_task_agents_linked_seconds Time in seconds of Agent Manager activity to check for offline agents. Each pod provides its own values.
application_uno_agentmanager_task_agents_linked_seconds_max Time in seconds of Agent Manager activity to check for offline agents. Each pod provides its own values.
application_uno_agentmanager_task_cleanup_commands_seconds_max Time in seconds of Agent Manager cleanup activity. Each pod provides its own values.
application_uno_agentmanager_task_cleanup_commands_seconds Time in seconds of Agent Manager cleanup activity. Each pod provides its own values.
application_uno_message_process_milliseconds_max Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_milliseconds Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_agentmanager_gw_connected_number Number of agent gateways currently connected. Each pod provides its own values.
application_uno_agentmanager_task_cleanup_expiredrequest_seconds Time in seconds of Agent Manager activity to cleanup expired requests. Each pod provides its own values.
application_uno_agentmanager_task_cleanup_expiredrequest_seconds_max Time in seconds of Agent Manager activity to cleanup expired requests. Each pod provides its own values.
Table 2. Audit metrics
Metric name Description
application_uno_message_process_delay_milliseconds Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_delay_milliseconds_max Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_audit_task_cleanup_old_audit_seconds_max Time in seconds to run old audit record cleanup. Each pod provides its own values.
application_uno_audit_task_cleanup_old_audit_seconds Time in seconds to run old audit record cleanup. Each pod provides its own values.
application_uno_message_process_milliseconds_max Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_milliseconds Time in milliseconds to process a message on the topic. Each pod provides its own values.
Table 3. Executor metrics
Metric name Description
application_uno_cloud_executor_task_save_joblog_seconds_max Time in seconds to run log archiving activity on the Cloud Task Launcher. Each pod provides its own values.
application_uno_cloud_executor_task_save_joblog_seconds Time in seconds to run log archiving activity on the Cloud Task Launcher. Each pod provides its own values.
application_uno_message_process_milliseconds_max Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_milliseconds Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_cloud_executor_running_task_number Number of task running on the Cloud Task Launcher. Each pod provides its own values.
application_uno_message_process_delay_milliseconds_max Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_cloud_executor_task_clear_executed_seconds_max Time in seconds to run cleanup of task running on the Cloud Task Launcher. Each pod provides its own values.
application_uno_cloud_executor_task_clear_executed_seconds Time in seconds to run cleanup of task running on the Cloud Task Launcher. Each pod provides its own values.
Table 4. Gateway metrics
Metric name Description
application_uno_message_process_delay_milliseconds Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_delay_milliseconds_max Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_milliseconds_max Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_milliseconds Time in milliseconds to process a message on the topic. Each pod provides its own values.
Table 5. Identification, Authentication and Authorization (IAA) metrics
Metric name Description
application_uno_message_process_milliseconds_max Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_milliseconds Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_delay_milliseconds Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_delay_milliseconds_max Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_iaa_task_clean_apikeys_seconds_max Time in seconds to cleanup expired API Keys. Each pod provides its own values.
application_uno_iaa_task_clean_apikeys_seconds Time in seconds to cleanup expired API Keys. Each pod provides its own values.
Table 6. Orchestrator metrics
Metric name Description
application_uno_orchestrator_license_job_count_number The count of jobs run on the system. Counts total completed jobs, successful jobs or unique jobs according to type tag. Run daily, monthly or from the beginning according to period tag. All pods provide the same values.
application_uno_orchestrator_jobs_by_workstation_jobs Number of jobs in plan by workstation and status. All pods provide the same values.
application_uno_orchestrator_submission_count_number_total Number of jobs submitted. Each pod provides its own values.
application_uno_message_process_delay_milliseconds Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_delay_milliseconds_max Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_milliseconds_max Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_milliseconds Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_orchestrator_license_job_to_send_jobs The number of jobs that are not yet sent to the license server. All pods provide the same values.
pplication_uno_orchestrator_job_execution_delay_milliseconds Time in milliseconds between job submission and job start. Each pod provides its own values.
application_uno_orchestrator_job_execution_delay_milliseconds_max Time in milliseconds between job submission and job start. Each pod provides its own values.
application_uno_orchestrator_jobs_count_jobs Total number of jobs in plan by status. All pods provide the same values.
application_uno_orchestrator_jobs_by_folder_jobs Number of jobs in plan by folder and status. All pods provide the same values.
Table 7. Scheduler metrics
Metric name Description
application_uno_scheduler_submission_count_number_total Number of jobs submitted. Each pod provides its own values.
application_uno_workstation_linked_number Number of linked workstation. All pods provide the same values.
application_uno_scheduler_task_clear_completed_seconds Time in seconds to cleanup expired API Keys. Each pod provides its own values.
application_uno_message_process_milliseconds_max Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_milliseconds Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_delay_milliseconds Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_delay_milliseconds Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_workstation_online_number Number of online workstations. All pods provide the same values.
Table 8. Storage metrics
Metric name Description
application_uno_message_process_milliseconds_max Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_milliseconds Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_delay_milliseconds Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_delay_milliseconds_max Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
Table 9. Timer metrics
Metric name Description
application_uno_message_process_delay_milliseconds Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_delay_milliseconds_max Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_milliseconds_max Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_milliseconds_max Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_milliseconds Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_timer_task_execution_milliseconds Number of tasks running on timer service. Each pod provides its own values.
application_uno_timer_task_execution_milliseconds_max Number of tasks running on timer service. Each pod provides its own values.
application_uno_timer_task_poller_seconds Time in seconds to process waiting tasks. Each pod provides its own values.
application_uno_timer_task_poller_seconds_max Time in seconds to process waiting tasks. Each pod provides its own values.
application_uno_timer_runningtask_number Number of tasks running on timer service. Each pod provides its own values.
application_uno_timer_task_delete_old_timer_seconds_max Time in seconds for cleaning up old tasks. Each pod provides its own values.
application_uno_timer_task_delete_old_timer_seconds Time in seconds for cleaning up old tasks. Each pod provides its own values.
application_uno_timer_taskcount_number Number of tasks defined on timer service. All pods provide the same values.
application_uno_timer_task_execution_lag_milliseconds Delay in running task on timer service. Each pod provides its own values.
application_uno_timer_task_execution_lag_milliseconds_max Delay in running task on timer service. Each pod provides its own values.
application_uno_timer_task_hang_scheduler_seconds_max Time in seconds for releasing tasks in hang. Each pod provides its own values.
application_uno_timer_task_hang_scheduler_seconds Time in seconds for releasing tasks in hang. Each pod provides its own values.
Table 10. Toolbox metrics
Metric name Description
application_uno_message_process_milliseconds_max Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_milliseconds Time in milliseconds to process a message on the topic. Each pod provides its own values.
application_uno_message_process_delay_milliseconds Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.
application_uno_message_process_delay_milliseconds_max Time in milliseconds between the time the message has been created and when it is processed. Each pod provides its own values.

Accessing and visualizing the metrics

You can also use other monitoring tools which support the OpenMetrics standard, for example Grafana, Prometheus, Splunk, and so on.

The metrics are exposed so that any monitoring tool supporting the OpenMetrics standard can display them. To access the metrics:
From the microservices :
You can view the metrics from any browser by accessing the /q/metrics endpoint. The product REST APIs retrieve and expose the metrics data through the following address:
https://microservice_address:microservice_port/q/metrics
where,
microservice_address
Represents the hostname or IP address of the microservice.
microservice_port
Represents the HTTP port number of the microservice.
From the Dynamic Workload Console (or console in a cloud environment):
You can view the metrics from any browser by accessing the /metrics endpoint with the credentials of the user defined in the authentication_config.xml file. The product REST APIs retrieve and expose the metrics data through the following address:
https://DWC_HOST:DWC_PORT_HTTP/metrics
where,
DWC_HOST
Represents the hostname or IP address of the console.
DWC_PORT_HTTP
Represents the HTTP port number of the console.