Monitoring Web Services

Overview

Universal Controller supports the following RESTful-based web service for Monitoring operations:

Formatting specifications for each web service, including details about parameter requirements, are provided.

Universal Controller Metrics (Prometheus)

The Universal Controller Metrics API requires the ops_admin role or the ops_service role.


Description

URI

http://host_name/uc/resources/metrics

HTTP Method

GET

Description

Scrape the Universal Controller metrics as Prometheus text.

Example URI

http://localhost:8080/uc/resources/metrics

Authentication

HTTP Basic

Consumes Content-Type

n/a

Produces Content-Type

text/plain; version=0.0.4

Example Responses

  • Status 200

    • <Metrics as text/plain; version=0.0.4>

  • Status 403

    • Operation prohibited due to security constraints.


Metrics

The following metric details  will be collected and will be scraped by Prometheus, an open-source systems monitoring and alerting toolkit.

  • Standard Exports CPU Time Spent and Memory Usage

  • JVM Class Loading
    • Memory Pool Exports 

    • Memory Allocation Exports

    • Buffer Pools Exports 

    • Garbage Collector Exports 

    • Thread Exports

    • Version Info Exports

  • Universal Controller 
    • UC Build Info Exports

    • UC Database Connection Pool Exports 

  • OMS Server

    • Status
    • Last Connected Server
    • Last Connected Time
  • License Details
    • License Expiration Date 

    • Cluster Nodes actual/licensed  

    • Distributed Agents actual/licensed  

    • z/OS Agents actual/licensed  

    • Task Defintions actual/licensed  

    • Monthly Task Executions actual/licensed  

License Metrics Data Example

 HELP uc_license_cluster_nodes_used Returns the number of cluster nodes used
# TYPE uc_license_cluster_nodes_used gauge
uc_license_cluster_nodes_used{environment="QA",customer="*Stonebranch Internal*",expiry_date="2029-12-31",} 1.0
# HELP uc_license_cluster_nodes_max Returns the number of cluster nodes allowed
# TYPE uc_license_cluster_nodes_max gauge
uc_license_cluster_nodes_max{environment="QA",customer="*Stonebranch Internal*",expiry_date="2029-12-31",} 2.0
# HELP uc_license_agents_distributed_used Returns the number of distributed agents used
# TYPE uc_license_agents_distributed_used gauge
uc_license_agents_distributed_used{environment="QA",customer="*Stonebranch Internal*",expiry_date="2029-12-31",} 4.0
# HELP uc_license_agents_distributed_max Returns the number of distributed agents allowed
# TYPE uc_license_agents_distributed_max gauge
uc_license_agents_distributed_max{environment="QA",customer="*Stonebranch Internal*",expiry_date="2029-12-31",} 300.0
# HELP uc_license_agents_zos_max Returns the number of Zos agents allowed
# TYPE uc_license_agents_zos_max gauge
uc_license_agents_zos_max{environment="QA",customer="*Stonebranch Internal*",expiry_date="2029-12-31",} 150.0
# HELP uc_license_agents_zos_used Returns the number of Zos agents used
# TYPE uc_license_agents_zos_used gauge
uc_license_agents_zos_used{environment="QA",customer="*Stonebranch Internal*",expiry_date="2029-12-31",} 0.0
# HELP uc_license_task_definitions_max Returns the number of task definitions allowed
# TYPE uc_license_task_definitions_max gauge
uc_license_task_definitions_max{environment="QA",customer="*Stonebranch Internal*",expiry_date="2029-12-31",} -1.0
# HELP uc_license_task_definitions_used Returns the number of task definitions used
# TYPE uc_license_task_definitions_used gauge
uc_license_task_definitions_used{environment="QA",customer="*Stonebranch Internal*",expiry_date="2029-12-31",} 0.0
# HELP uc_license_monthly_executions_max Returns the number of monthly task executions allowed
# TYPE uc_license_monthly_executions_max gauge
uc_license_monthly_executions_max{environment="QA",customer="*Stonebranch Internal*",expiry_date="2029-12-31",} -1.0
# HELP uc_license_monthly_executions_used Returns the number of monthly task executions used
# TYPE uc_license_monthly_executions_used gauge
uc_license_monthly_executions_used{environment="QA",customer="*Stonebranch Internal*",expiry_date="2029-12-31",} 0.0


OMS Server Metrics Data Example

 # HELP uc_oms_server_status OMS Server status. (0=Disconnected, 1=Connected, -1=Unknown)
# TYPE uc_oms_server_status gauge
uc_oms_server_status{server_address="localhost",last_connected="localhost/127.0.0.1:7878",} 1.0
# HELP uc_oms_server_last_connected_time_seconds OMS Server last connected time in seconds.
# TYPE uc_oms_server_last_connected_time_seconds gauge
uc_oms_server_last_connected_time_seconds{server_address="localhost",last_connected="localhost/127.0.0.1:7878",} 1.656447938346E12
# HELP uc_oms_server_session_status OMS Server session status. (0=None, 1=Impaired, 2=Operational, -1=Unknown)
# TYPE uc_oms_server_session_status gauge
uc_oms_server_session_status{server_address="localhost",last_connected="localhost/127.0.0.1:7878",} 2.0