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.
- Prometheus
- VictoriaMetrics
- Telegraf
- Grafana (on top of any data source solutions such as Prometheus, VictoriaMetrics, InfluxDB and others.)
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.
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:
- 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" ]
- 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
- Importing the dashboards directly into Grafana.
- Provisioning the dashboards using Grafana's provisioning system.
- Installing IBM RMF for z/OS Grafana plugin.