OpenMetrics Endpoint

The Monitor III metrics can be exposed to third-party tools using the OpenMetrics exposition format.

This approach standardizes monitoring and enhances the observability of Monitor III data for better integration and analysis with various monitoring tools.

Some examples of the tools are:

By default, DDS exposes all the available Monitor III metrics in the format. It can be configured to expose only chosen metrics and metric categories and also to customize names.

OpenMetrics Endpoint Configuration

This is optional.

Each Monitor III metric can be skipped or exposed by default or given a custom name. This behavior can be configured through a configuration file, which is referenced by the GPMOMC DD (see the sample proclib GPMSERVE). The default sample configuration is shipped in SERBPWSV(GPMOMC) in the yaml format (SYS1. SERBPWSV(GPMOMC) by default). For more information, refer to the sample.

If the provided configuration is missing, then DDS runs with the default OpenMetrics options.

You can run the RELOADOM modify command to reload the configuration without restarting the DDS.

Note: When multiple DDS instances are running on the same CPC to expose data, it is recommended to enable the cpcs or lpars metric groups on only one of the DDS instances to prevent data duplication.

Define target definitions

You must define a target to enable a third-party tool to scrape exposed metrics.

The /metrics/m3 endpoint must be used to define the target. The scrape interval must be equal to the Monitor III mintime value. For more information, refer to the MINTIME section in the z/OS Data Gatherer User's Guide .

If you want to scrape specific metric groups, you can use the group endpoint parameter as mentioned in the example below. For more information see the z/OS Resource Measurement Facility Programmer's Guide. Refer to the specific documentation for the tool you are using for precise information on target definition.

Some of the target definition examples for Prometheus or VictoriaMetrics are as follows:

To scrape all the metrics as defined in GPMOMC:

- job_name: "m3@plex00"
  scrape_interval: 100s # Should be equal to the Monitor III mintime
  scrape_timeout: 50s
  metrics_path: /metrics/m3
  scheme: https # Remove or change to "http" if AT/TLS for DDS is not set
  tls_config:
    insecure_skip_verify: false # Change to “true” if self-signed certificates are used
  basic_auth:  # Use DDS credentials or remove if DDS authentication is disabled
    username: 'DDSUSER'
    password: 'XXXXXXX'
  static_configs:
    - targets: [ "ddshostname:8803" ] 
To scrape only CPC and LPAR related metrics as defined in GPMOMC:

- job_name: "m3@plex00"
  scrape_interval: 100s # Should be equal to the Monitor III mintime
  scrape_timeout: 50s
  metrics_path: /metrics/m3
  scheme: https # Remove or change to "http" if AT/TLS for DDS is not set
  tls_config:
    insecure_skip_verify: false # Change to "true" if self-signed certificates are used
  basic_auth:  # Use DDS credentials or remove if DDS authentication is disabled
    username: 'DDSUSER'
    password: 'XXXXXXX'
  params:
    groups: cpcs,lpars
  static_configs:
    - targets: [ "ddshostname:8803" ]  

Grafana Sample Dashboards

The Grafana sample dashboards can be imported into Grafana using the following methods: For more information, see Grafana Sample Dashboards.