diff --git a/README.md b/README.md index 801d571a..cae2a042 100644 --- a/README.md +++ b/README.md @@ -2,27 +2,39 @@ Resource Measurement Facility for z/OS +## Grafana Sample Dashboards + +The IBM RMF Monitor III metrics can be exposed to third-party tools directly using the OpenMetrics exposition format. +Some examples of the tools are: +- Prometheus +- VictoriaMetrics +- Telegraf + +Grafana sample dashboards for Prometheus and VictoriaMetrics as well as usage information are available in the [grafana/dashboards](grafana/dashboards) directory. + +Refer to [z/OS Resource Measurement Facility User's Guide](https://www.ibm.com/docs/en/zos/latest?topic=rmf-zos-resource-measurement-facility-users-guide) for more information on configuring RMF DDS. + ## IBM RMF for z/OS Grafana Plugin The IBM® RMF for z/OS Grafana plugin provides effortless analysis and visualization of RMF Monitor III metrics and reports within the Grafana platform. -See [IBM RMF for z/OS Grafana Plugin](https://github.com/IBM/RMF/blob/release/spreadsheet-reporter/grafana/rmf-app/README.md) for more details. +See [IBM RMF for z/OS Grafana Plugin](grafana/rmf-app/README.md) for more details. ## IBM RMF Performance Monitoring -The IBM® RMF Performance Monitoring (RMF PM) is a tool that enables you to manage the performance of your z/OS host right from your workstation. By establishing a TCP/IP connection to one or more z/OS sysplexes, you can effortlessly access real-time data on the resources of the corresponding sysplex. +The IBM® RMF Performance Monitoring (RMF PM) is a tool that enables you to manage the performance of your z/OS host right from your workstation. By establishing a TCP/IP connection to one or more z/OS sysplexes, you can access real-time data on the resources of the corresponding sysplex. -RMF PM offers great flexibility in creating unique scenarios to monitor the system's performance. You can easily sample data from different resources and combine it to comprehensively overview the system's performance. With RMF PM, you can visualize the performance data as bar charts to better understand the system's status. +RMF PM offers flexibility in creating scenarios to monitor the system's performance. You can sample data from different resources and combine it to comprehensively overview the system's performance. With RMF PM, you can visualize the performance data as bar charts to better understand the system's status. -You can download the installer from the following location: +You can download the installer from the following location: https://github.com/IBM/RMF/releases -Refer to the [z/OS Resource Measurement Facility User's Guide](https://www.ibm.com/docs/en/zos/latest?topic=monitoring-performance-overview) for more information. +Refer to the [z/OS Resource Measurement Facility User's Guide](https://www.ibm.com/docs/en/zos/latest?topic=monitoring-performance-overview) for more information. ## IBM RMF Spreadsheet Reporter -The RMF Spreadsheet Reporter is an advanced and efficient workstation solution that enables users to visualize RMF (Resource Measurement Facility) Postprocessor data in a graphical format. With the RMF Spreadsheet Reporter, you can convert your RMF data into a spreadsheet format, which makes it easier to analyze and manipulate the data. +The RMF Spreadsheet Reporter is a workstation solution that enables users to visualize RMF (Resource Measurement Facility) Postprocessor data in a graphical format. With the RMF Spreadsheet Reporter, you can convert your RMF data into a spreadsheet format, which makes it easier to analyze and manipulate the data. You can download the installer from the following location: (https://github.com/IBM/RMF/releases). -Refer to the [z/OS Resource Measurement Facility User's Guide](https://www.ibm.com/docs/en/zos/latest?topic=reporter-concepts-performance-analysis-rmf-spreadsheet) for more information. \ No newline at end of file +Refer to the [z/OS Resource Measurement Facility User's Guide](https://www.ibm.com/docs/en/zos/latest?topic=reporter-concepts-performance-analysis-rmf-spreadsheet) for more information. diff --git a/grafana/dashboards/README.md b/grafana/dashboards/README.md new file mode 100644 index 00000000..8d3ae01c --- /dev/null +++ b/grafana/dashboards/README.md @@ -0,0 +1,95 @@ +# Grafana Sample Dashboards + +The IBM RMF Monitor III metrics can be exposed to third-party tools directly using the OpenMetrics exposition format. +Some examples of the tools are: +- Prometheus +- VictoriaMetrics +- Telegraf + + +The directory contains Grafana sample dashboards for Prometheus and VictoriaMetrics to visualize the Monitor III data. +Note: VictoriaMetrics is a drop-in replacement for Prometheus, the same dashboards can be used with both. + +[Go to Prometheus / VictoriaMetrics Configuration](#prometheus--victoriametrics-configuration) +[Go to Sample Dashboards Usage](#sample-dashboards-usage) + +## Prometheus / VictoriaMetrics Configuration + +The Monitor III data can be exposed through the `/metrics/m3` endpoint. +**Note**: OA67701 has to be applied for the feature. + +Make sure you have the Monitor III metrics being scraped by Prometheus or VictoriaMetrics, and a Grafana data source pointing to the Prometheus / VictoriaMetrics instance is configured. + +A target definition example to scrape all the metrics as defined in GPMOMC (to limit metrics being scraped, use the `groups` parameter of the endpoint or edit GPMOMC DDS configuration): + +```yaml +- 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" ] +``` + +Refer to [z/OS Resource Measurement Facility User's Guide](https://www.ibm.com/docs/en/zos/latest?topic=rmf-zos-resource-measurement-facility-users-guide) for more information. + +## Sample Dashboards Usage + +The dashboards can be imported into Grafana in three ways: +- [Importing the dashboards directly into Grafana.](#import-dashboards) +- [Provision the dashboards using Grafana's provisioning system.](#provision-dashboards) +- [Installing IBM RMF for z/OS Grafana Plugin.](#install-the-ibm-rmf-for-zos-grafana-plugin) + +### Import Dashboards + +You can import dashboards directly into your Grafana instance via the UI: +- Log in to Grafana. +- Navigate to Dashboards → New → Import. +- Upload a .json file from this repository or paste its contents. + +Refer to [the Import Dashboard docs](https://grafana.com/docs/grafana/latest/dashboards/build-dashboards/import-dashboards/#import-dashboard) for more information. + +### Provision Dashboards + +For automation and version control, you can provision dashboards using Grafana's provisioning system: +- Copy the .json files from this repo into your `provisioning/directory` (the exact location depends on your Grafana installation and configuration). +- Define them in your provisioning YAML config, for example: + ```yaml + apiVersion: 1 + providers: + # an unique provider name. Required + - name: 'a unique provider name' + # Org id. Default to 1 + orgId: 1 + # name of the dashboard folder. + folder: '' + # folder UID. will be automatically generated if not specified + folderUid: '' + # provider type. Default to 'file' + type: file + # disable dashboard deletion + disableDeletion: false + # how often Grafana will scan for changed dashboards + updateIntervalSeconds: 10 + # allow updating provisioned dashboards from the UI + allowUiUpdates: false + options: + # path to dashboard files on disk. Required when using the 'file' type + path: /var/lib/grafana/dashboards + # use folder names from filesystem to create folders in Grafana + foldersFromFilesStructure: true + ``` + +Refer to [the Provisioning Dashboards docs](https://grafana.com/docs/grafana/latest/administration/provisioning/#dashboards) for more information. + + +### Install the IBM RMF for z/OS Grafana Plugin + +All the sample dashboards are bundled into [IBM RMF for z/OS Grafana Plugin](grafana/rmf-app/README.md). +Follow the instructions to install it and [deploy the sample dashboards](https://ibm.github.io/RMF/grafana/rmf-app/prometheus_sample_dashboards.html) from IBM RMF App in Grafana. diff --git a/grafana/dashboards/prometheus/zos-central-storage.json b/grafana/dashboards/prometheus/zos-central-storage.json new file mode 100644 index 00000000..8cd59ef8 --- /dev/null +++ b/grafana/dashboards/prometheus/zos-central-storage.json @@ -0,0 +1,479 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana", + "uid": "-- Grafana --" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "links": [], + "panels": [ + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "panels": [], + "title": "Current Usage", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "align": "auto", + "cellOptions": { + "type": "auto" + }, + "inspect": false, + "filterable": true + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "decbytes" + }, + "overrides": [ + { + "matcher": { + "id": "byRegexp", + "options": "/.*\\(%\\)/" + }, + "properties": [ + { + "id": "unit", + "value": "percentunit" + } + ] + } + ] + }, + "gridPos": { + "h": 12, + "w": 24, + "x": 0, + "y": 1 + }, + "options": { + "cellHeight": "sm", + "footer": { + "countRows": false, + "fields": "", + "reducer": ["sum"], + "show": false + }, + "showHeader": true + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n mvs_system_storage_real_storage_frames{sysplex=~\"${sysplex}\"} * 4096,\n \"__name__\",\n \"Storage Online\",\n \"\",\n \".*\"\n)", + "instant": true, + "legendFormat": "{{sysname}}", + "range": false, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n mvs_system_storage_frames_available_total{sysplex=~\"${sysplex}\"} * 4096,\n \"__name__\",\n \"Storage Available\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n mvs_system_storage_frames_available_total{sysplex=~\"${sysplex}\"} / mvs_system_storage_real_storage_frames{sysplex=~\"${sysplex}\"},\n \"__name__\",\n \"Storage Available (%)\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "C" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n (mvs_system_storage_real_storage_frames{sysplex=~\"${sysplex}\"} - mvs_system_storage_frames_available_total{sysplex=~\"${sysplex}\"}) * 4096,\n \"__name__\",\n \"Storage Used\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "D" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n 1 - mvs_system_storage_frames_available_total{sysplex=~\"${sysplex}\"} / mvs_system_storage_real_storage_frames{sysplex=~\"${sysplex}\"},\n \"__name__\",\n \"Storage Used (%)\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "E" + } + ], + "title": "Current Central Storage by System", + "transformations": [ + { + "id": "joinByLabels", + "options": { + "value": "__name__" + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "instance": true, + "job": true + }, + "includeByName": {}, + "indexByName": { + "Storage Available": 5, + "Storage Available (%)": 6, + "Storage Online": 4, + "Storage Used": 7, + "Storage Used (%)": 8, + "instance": 0, + "job": 1, + "sysname": 2, + "sysplex": 3 + }, + "renameByName": { + "sysname": "Sysname", + "sysplex": "Sysplex" + } + } + } + ], + "type": "table" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 13 + }, + "panels": [], + "title": "Usage History", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": true, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "decbytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 12, + "w": 24, + "x": 0, + "y": 14 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["last", "min", "max", "mean"], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "(mvs_system_storage_real_storage_frames{sysplex=~\"${sysplex}\"} - mvs_system_storage_frames_available_total{sysplex=~\"${sysplex}\"}) * 4096", + "instant": false, + "legendFormat": "{{sysname}}", + "range": true, + "refId": "A" + } + ], + "title": "Central Storage Usage by System (bytes)", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": true, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percentunit" + }, + "overrides": [] + }, + "gridPos": { + "h": 12, + "w": 24, + "x": 0, + "y": 26 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["last", "min", "max", "mean"], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "1 - mvs_system_storage_frames_available_total{sysplex=~\"${sysplex}\"} / mvs_system_storage_real_storage_frames{sysplex=~\"${sysplex}\"}", + "instant": false, + "legendFormat": "{{sysname}}", + "range": true, + "refId": "A" + } + ], + "title": "Central Storage Usage by System (percent)", + "type": "timeseries" + } + ], + "preload": false, + "refresh": "1m", + "tags": ["RMF"], + "templating": { + "list": [ + { + "allowCustomValue": false, + "includeAll": false, + "label": "Data Source", + "name": "datasource", + "options": [], + "query": "prometheus", + "refresh": 1, + "regex": "", + "type": "datasource" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(mvs_rmf_m3_mintime,sysplex)", + "includeAll": true, + "label": "Sysplex", + "multi": true, + "name": "sysplex", + "options": [], + "query": { + "qryType": 1, + "query": "label_values(mvs_rmf_m3_mintime,sysplex)", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "", + "sort": 1, + "type": "query" + }, + { + "allowCustomValue": false, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "hide": 2, + "name": "mintime", + "options": [], + "query": { + "qryType": 3, + "query": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "/\\S* (\\d+) \\d*/", + "type": "query" + } + ] + }, + "timepicker": { + "refresh_intervals": ["1m", "5m", "15m", "30m", "1h", "2h", "1d"] + }, + "timezone": "browser", + "title": "z/OS Central Storage Usage", + "weekStart": "" +} diff --git a/grafana/dashboards/prometheus/zos-common-storage.json b/grafana/dashboards/prometheus/zos-common-storage.json new file mode 100644 index 00000000..5a0b39ad --- /dev/null +++ b/grafana/dashboards/prometheus/zos-common-storage.json @@ -0,0 +1,986 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana", + "uid": "-- Grafana --" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "links": [], + "panels": [ + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "panels": [], + "title": "Current Usage", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 6, + "x": 0, + "y": 1 + }, + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "left", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(10, mvs_system_storage_csa_average_percent{sysplex=~\"${sysplex}\"})", + "instant": true, + "legendFormat": "{{sysname}}", + "range": false, + "refId": "A" + } + ], + "title": "CSA Usage by System (Top 10)", + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 6, + "x": 6, + "y": 1 + }, + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "left", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(10, mvs_system_storage_sqa_average_percent{sysplex=~\"${sysplex}\"})", + "instant": true, + "legendFormat": "{{sysname}}", + "range": false, + "refId": "A" + } + ], + "title": "SQA Usage by System (Top 10)", + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 6, + "x": 12, + "y": 1 + }, + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "left", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(10, mvs_system_storage_ecsa_average_percent{sysplex=~\"${sysplex}\"})", + "format": "time_series", + "instant": true, + "legendFormat": "{{sysname}}", + "range": false, + "refId": "A" + } + ], + "title": "ECSA Usage by System (Top 10)", + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 6, + "x": 18, + "y": 1 + }, + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "left", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(10, mvs_system_storage_esqa_average_percent{sysplex=~\"${sysplex}\"})", + "instant": true, + "legendFormat": "{{sysname}}", + "range": false, + "refId": "A" + } + ], + "title": "ESQA Usage by System (Top 10)", + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "fieldMinMax": true, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 0, + "y": 11 + }, + "interval": "${mintime}", + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "left", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "disableTextWrap": false, + "editorMode": "code", + "exemplar": false, + "expr": "topk(10, mvs_job_storage_csa_percent{sysplex=~\"${sysplex}\"})", + "format": "time_series", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": true, + "legendFormat": "{{sysname}}.{{job_name}} [{{asid_dec}}]", + "range": false, + "refId": "A", + "useBackend": false + } + ], + "title": "CSA Usage by Job (Top 10)", + "transformations": [ + { + "id": "filterFieldsByName", + "options": { + "include": { + "names": ["Time", "newid2", "Value", "job_name", "system_name"] + } + } + } + ], + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 11 + }, + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "left", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(10, mvs_job_storage_sqa_percent{sysplex=~\"${sysplex}\"})", + "instant": true, + "legendFormat": "{{sysname}}.{{job_name}} [{{asid_dec}}]", + "range": false, + "refId": "A" + } + ], + "title": "SQA Usage by Job (Top 10)", + "type": "bargauge" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 20 + }, + "panels": [], + "title": "Usage History", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": true, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 0, + "y": 21 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["mean"], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_system_storage_csa_average_percent{sysplex=~\"${sysplex}\"}", + "instant": false, + "legendFormat": "{{sysname}}", + "range": true, + "refId": "A" + } + ], + "title": "CSA Usage by System", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": true, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 21 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["mean"], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_system_storage_sqa_average_percent{sysplex=~\"${sysplex}\"}", + "instant": false, + "legendFormat": "{{sysname}}", + "range": true, + "refId": "A" + } + ], + "title": "SQA Usage by System", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": true, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 11, + "w": 12, + "x": 0, + "y": 31 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["mean"], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_system_storage_ecsa_average_percent{sysplex=~\"${sysplex}\"}", + "instant": false, + "legendFormat": "{{sysname}}", + "range": true, + "refId": "A" + } + ], + "title": "ECSA Usage by System", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": true, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 11, + "w": 12, + "x": 12, + "y": 31 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["mean"], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_system_storage_esqa_average_percent{sysplex=~\"${sysplex}\"}", + "instant": false, + "legendFormat": "{{sysname}}", + "range": true, + "refId": "A" + } + ], + "title": "ESQA Usage by System", + "type": "timeseries" + } + ], + "preload": false, + "refresh": "1m", + "tags": ["RMF"], + "templating": { + "list": [ + { + "allowCustomValue": false, + "includeAll": false, + "label": "Data Source", + "name": "datasource", + "options": [], + "query": "prometheus", + "refresh": 1, + "regex": "", + "type": "datasource" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(mvs_rmf_m3_mintime,sysplex)", + "includeAll": true, + "label": "Sysplex", + "multi": true, + "name": "sysplex", + "options": [], + "query": { + "qryType": 1, + "query": "label_values(mvs_rmf_m3_mintime,sysplex)", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "", + "sort": 1, + "type": "query" + }, + { + "allowCustomValue": false, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "hide": 2, + "name": "mintime", + "options": [], + "query": { + "qryType": 3, + "query": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "/\\S* (\\d+) \\d*/", + "type": "query" + } + ] + }, + "timepicker": { + "refresh_intervals": ["1m", "5m", "15m", "30m", "1h", "2h", "1d"] + }, + "timezone": "browser", + "title": "z/OS Common Storage Usage", + "weekStart": "" +} diff --git a/grafana/dashboards/prometheus/zos-coupling-facility.json b/grafana/dashboards/prometheus/zos-coupling-facility.json new file mode 100644 index 00000000..1de43b1d --- /dev/null +++ b/grafana/dashboards/prometheus/zos-coupling-facility.json @@ -0,0 +1,727 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana", + "uid": "-- Grafana --" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "links": [], + "panels": [ + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "panels": [], + "title": "Current Usage", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 8, + "x": 0, + "y": 1 + }, + "interval": "${mintime}", + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "text": {}, + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(10, mvs_cf_processor_utilization_percent)", + "instant": true, + "legendFormat": "{{sysplex}}.{{name}}", + "range": false, + "refId": "A" + } + ], + "title": "Processor Usage by Coupling Facility (Top 10)", + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 8, + "x": 8, + "y": 1 + }, + "interval": "${mintime}", + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(10, mvs_cf_request_rate)", + "instant": true, + "legendFormat": "{{sysplex}}.{{name}}", + "range": false, + "refId": "A" + } + ], + "title": "Coupling Facility Request Rate (Top 10)", + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 8, + "x": 16, + "y": 1 + }, + "interval": "${mintime}", + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(10, mvs_cf_storage_utilized_percent)", + "instant": true, + "legendFormat": "{{sysplex}}.{{name}}", + "range": false, + "refId": "A" + } + ], + "title": "Storage Usage by Coupling Facility (Top 10)", + "type": "bargauge" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 6 + }, + "panels": [], + "title": "Usage History", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 0, + "y": 7 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["last", "mean", "min", "max"], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_cf_processor_utilization_percent", + "instant": false, + "legendFormat": "{{sysplex}}.{{name}}", + "range": true, + "refId": "A" + } + ], + "title": "Processor Usage by Coupling Facility", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 7 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["last", "mean", "min", "max"], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_cf_request_rate", + "instant": false, + "legendFormat": "{{sysplex}}.{{name}}", + "range": true, + "refId": "A" + } + ], + "title": "Coupling Facility Request Rate", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "decbytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 0, + "y": 17 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["last", "mean", "min", "max"], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_cf_storage_size_bytes - mvs_cf_storage_available_bytes", + "instant": false, + "legendFormat": "{{sysplex}}.{{name}}", + "range": true, + "refId": "A" + } + ], + "title": "Storage Usage by Coupling Facility (bytes) ", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 17 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["last", "mean", "min", "max"], + "displayMode": "table", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_cf_storage_utilized_percent", + "instant": false, + "legendFormat": "{{sysplex}}.{{name}}", + "range": true, + "refId": "A" + } + ], + "title": "Storage Usage by Coupling Facility (percent) ", + "type": "timeseries" + } + ], + "preload": false, + "refresh": "1m", + "tags": ["RMF"], + "templating": { + "list": [ + { + "allowCustomValue": false, + "includeAll": false, + "label": "Data Source", + "name": "datasource", + "options": [], + "query": "prometheus", + "refresh": 1, + "regex": "", + "type": "datasource" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(mvs_rmf_m3_mintime,sysplex)", + "includeAll": true, + "label": "Sysplex", + "multi": true, + "name": "sysplex", + "options": [], + "query": { + "qryType": 1, + "query": "label_values(mvs_rmf_m3_mintime,sysplex)", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "", + "sort": 1, + "type": "query" + }, + { + "allowCustomValue": false, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "hide": 2, + "name": "mintime", + "options": [], + "query": { + "qryType": 3, + "query": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "/\\S* (\\d+) \\d*/", + "type": "query" + } + ] + }, + "timepicker": { + "refresh_intervals": ["1m", "5m", "15m", "30m", "1h", "2h", "1d"] + }, + "timezone": "browser", + "title": "z/OS Coupling Facility Usage", + "weekStart": "" +} diff --git a/grafana/dashboards/prometheus/zos-msu-capacity.json b/grafana/dashboards/prometheus/zos-msu-capacity.json new file mode 100644 index 00000000..83124ed6 --- /dev/null +++ b/grafana/dashboards/prometheus/zos-msu-capacity.json @@ -0,0 +1,472 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana", + "uid": "-- Grafana --" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "links": [], + "panels": [ + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "panels": [], + "title": "Current Usage", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 1, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "yellow", + "value": 0.8 + }, + { + "color": "red", + "value": 0.9 + } + ] + }, + "unit": "percentunit" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 0, + "y": 1 + }, + "options": { + "minVizHeight": 75, + "minVizWidth": 75, + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showThresholdLabels": false, + "showThresholdMarkers": true, + "sizing": "auto" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "# Use average values since the same CPC info may come from different sysplexes\navg by(cpc_id) (sum by(cpc_id) (mvs_lpar_actual_msu_h{line_type=\"CP\",cpc_id=~\"${cpcId}\"}) / on(cpc_id) mvs_cpc_capacity_msu_h{cpc_id=~\"${cpcId}\"})", + "hide": false, + "instant": true, + "legendFormat": "{{cpc_sequence_number}}", + "range": false, + "refId": "A" + } + ], + "title": "Current CPC Capacity (percent)", + "type": "gauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 1 + }, + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "left", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "# Use average values since the same CPC info may come from different sysplexes\nsort_desc(avg by (cpc_id, lpar_name) (mvs_lpar_actual_msu_h{line_type=\"CP\", cpc_id=~\"${cpcId}\"}))", + "instant": true, + "legendFormat": "{{cpc_id}}.{{lpar_name}}", + "range": false, + "refId": "A" + } + ], + "title": "Current LPAR Capacity (MSU / hour)", + "type": "bargauge" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 11 + }, + "panels": [], + "title": "Usage History", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": true, + "mappings": [], + "max": 1, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percentunit" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 24, + "x": 0, + "y": 12 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["last", "mean", "min", "max"], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "# Use average values since the same CPC info may come from different sysplexes\navg by (cpc_id) (sum by(cpc_id) (mvs_lpar_actual_msu_h{line_type=\"CP\",cpc_id=~\"${cpcId}\"}) / on(cpc_id) mvs_cpc_capacity_msu_h{cpc_id=~\"${cpcId}\"})", + "instant": false, + "legendFormat": "{{cpc_id}}", + "range": true, + "refId": "A" + } + ], + "title": "CPC Capacity (percent)", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": true, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 24, + "x": 0, + "y": 21 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": ["last", "mean", "min", "max"], + "displayMode": "table", + "placement": "right", + "showLegend": true, + "width": 390 + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "# Use average values since the same CPC info may come from different sysplexes\navg by (cpc_id, lpar_name) (mvs_lpar_actual_msu_h{line_type=\"CP\", cpc_id=~\"${cpcId}\"})", + "instant": false, + "legendFormat": "{{cpc_id}}.{{lpar_name}}", + "range": true, + "refId": "A" + } + ], + "title": "Actual LPAR Capacity (MSU / hour)", + "type": "timeseries" + } + ], + "preload": false, + "refresh": "1m", + "tags": ["RMF"], + "templating": { + "list": [ + { + "allowCustomValue": false, + "includeAll": false, + "label": "Data Source", + "name": "datasource", + "options": [], + "query": "prometheus", + "refresh": 1, + "regex": "", + "type": "datasource" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(mvs_cpc_capacity_msu_h,cpc_id)", + "includeAll": true, + "label": "CPC ID", + "multi": true, + "name": "cpcId", + "options": [], + "query": { + "qryType": 1, + "query": "label_values(mvs_cpc_capacity_msu_h,cpc_id)", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 1, + "regex": "", + "sort": 1, + "type": "query" + }, + { + "allowCustomValue": false, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(mvs_cpc_capacity_msu_h{cpc_id=~\"$cpcId\"},sysplex)", + "hide": 2, + "multi": true, + "name": "sysplex", + "options": [], + "query": { + "qryType": 1, + "query": "label_values(mvs_cpc_capacity_msu_h{cpc_id=~\"$cpcId\"},sysplex)", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "", + "type": "query" + }, + { + "allowCustomValue": false, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "hide": 2, + "name": "mintime", + "options": [], + "query": { + "qryType": 3, + "query": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "/\\S* (\\d+) \\d*/", + "type": "query" + } + ] + }, + "timepicker": { + "refresh_intervals": ["1m", "5m", "15m", "30m", "1h", "2h", "1d"] + }, + "timezone": "browser", + "title": "z/OS MSU Capacity", + "weekStart": "" +} diff --git a/grafana/dashboards/prometheus/zos-usage-by-job.json b/grafana/dashboards/prometheus/zos-usage-by-job.json new file mode 100644 index 00000000..64c36b27 --- /dev/null +++ b/grafana/dashboards/prometheus/zos-usage-by-job.json @@ -0,0 +1,840 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana", + "uid": "-- Grafana --" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "links": [], + "panels": [ + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "panels": [], + "title": "Current Usage", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "#EAB839", + "value": 60 + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 0, + "y": 1 + }, + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["last"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(20, mvs_job_total_eappl_percent{sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"})", + "instant": true, + "legendFormat": "{{sysname}}.{{job_name}} [{{asid_dec}}]", + "range": false, + "refId": "A" + } + ], + "title": "Current CP Usage (Top 20)", + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + } + ] + }, + "unit": "decbytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 1 + }, + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["last"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(20, mvs_job_working_set_frames_total{sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"} * 4096)", + "instant": true, + "legendFormat": "{{sysname}}.{{job_name}} [{{asid_dec}}]", + "range": false, + "refId": "A" + } + ], + "title": "Current Working Sets (Top 20)", + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "#EAB839", + "value": 60 + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 0, + "y": 11 + }, + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["last"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(20, mvs_job_cp_eappl_percent{sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"})", + "instant": true, + "legendFormat": "{{sysname}}.{{job_name}} [{{asid_dec}}]", + "range": false, + "refId": "A" + } + ], + "title": "Current GCP Usage (Top 20)", + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "#EAB839", + "value": 60 + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 11 + }, + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["last"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(20, mvs_job_iip_eappl_percent{sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"})", + "instant": true, + "legendFormat": "{{sysname}}.{{job_name}} [{{asid_dec}}]", + "range": false, + "refId": "A" + } + ], + "title": "Current ZIIP Usage (Top 20)", + "type": "bargauge" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 21 + }, + "panels": [], + "title": "Usage History", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "#EAB839", + "value": 60 + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 0, + "y": 22 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": true, + "sortBy": "Name", + "sortDesc": false + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_job_total_eappl_percent{sysplex=~\"${sysplex}\",sysname=~\"${sysname}\",job_name=~\"${jobname}\"}", + "instant": false, + "legendFormat": "{{sysname}}.{{job_name}} [{{asid_dec}}]", + "range": true, + "refId": "A" + } + ], + "title": "Total CP Usage by Job (percent)", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "#EAB839", + "value": 40 + }, + { + "color": "red", + "value": 60 + } + ] + }, + "unit": "decbytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 22 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": true, + "sortBy": "Last", + "sortDesc": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_job_working_set_frames_total{sysplex=~\"${sysplex}\",sysname=~\"${sysname}\",job_name=~\"${jobname}\"} * 4096", + "instant": false, + "legendFormat": "{{sysname}}.{{job_name}} [{{asid_dec}}]", + "range": true, + "refId": "A" + } + ], + "title": "Working Sets by Job (bytes)", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "#EAB839", + "value": 40 + }, + { + "color": "red", + "value": 60 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 0, + "y": 32 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": true, + "sortBy": "Name", + "sortDesc": false + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_job_cp_eappl_percent{sysplex=~\"${sysplex}\",sysname=~\"${sysname}\",job_name=~\"${jobname}\"}", + "instant": false, + "legendFormat": "{{sysname}}.{{job_name}} [{{asid_dec}}]", + "range": true, + "refId": "A" + } + ], + "title": "GCP Usage by Job (percent)", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "#EAB839", + "value": 40 + }, + { + "color": "red", + "value": 60 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 32 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": true, + "sortBy": "Name", + "sortDesc": false + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_job_iip_eappl_percent{sysplex=~\"${sysplex}\",sysname=~\"${sysname}\",job_name=~\"${jobname}\"}", + "instant": false, + "legendFormat": "{{sysname}}.{{job_name}} [{{asid_dec}}]", + "range": true, + "refId": "A" + } + ], + "title": "ZIIP Usage by Job (percent)", + "type": "timeseries" + } + ], + "preload": false, + "tags": ["RMF"], + "templating": { + "list": [ + { + "allowCustomValue": false, + "includeAll": false, + "label": "Data Source", + "name": "datasource", + "options": [], + "query": "prometheus", + "refresh": 1, + "regex": "", + "type": "datasource" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(mvs_rmf_m3_mintime,sysplex)", + "includeAll": true, + "label": "Sysplex", + "multi": true, + "name": "sysplex", + "options": [], + "query": { + "qryType": 1, + "query": "label_values(mvs_rmf_m3_mintime,sysplex)", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "", + "sort": 1, + "type": "query" + }, + { + "allowCustomValue": false, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "hide": 2, + "name": "mintime", + "options": [], + "query": { + "qryType": 3, + "query": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "/\\S* (\\d+) \\d*/", + "type": "query" + }, + { + "allowCustomValue": true, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(mvs_wlm_group_delay_percent{sysplex=~\"$sysplex\"},sysname)", + "includeAll": true, + "label": "Sysname", + "multi": true, + "name": "sysname", + "options": [], + "query": { + "qryType": 1, + "query": "label_values(mvs_wlm_group_delay_percent{sysplex=~\"$sysplex\"},sysname)", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "", + "sort": 1, + "type": "query" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(mvs_job_total_eappl_percent{sysplex=~\"$sysplex\", sysname=~\"$sysname\"},job_name)", + "description": "Applied to historical views", + "label": "Jobname", + "multi": true, + "name": "jobname", + "options": [], + "query": { + "qryType": 1, + "query": "label_values(mvs_job_total_eappl_percent{sysplex=~\"$sysplex\", sysname=~\"$sysname\"},job_name)", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 1, + "regex": "", + "type": "query" + } + ] + }, + "timepicker": { + "refresh_intervals": ["1m", "5m", "15m", "30m", "1h", "2h", "1d"] + }, + "timezone": "browser", + "title": "z/OS Usage by Job" +} diff --git a/grafana/dashboards/prometheus/zos-wlm-delays.json b/grafana/dashboards/prometheus/zos-wlm-delays.json new file mode 100644 index 00000000..92ae387d --- /dev/null +++ b/grafana/dashboards/prometheus/zos-wlm-delays.json @@ -0,0 +1,719 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana", + "uid": "-- Grafana --" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "links": [], + "panels": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "#EAB839", + "value": 40 + }, + { + "color": "red", + "value": 60 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 24, + "x": 0, + "y": 0 + }, + "options": { + "displayMode": "gradient", + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": ["lastNotNull"], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "topk(20, label_replace({__name__=~\"mvs_wlm_group_delay_(.*)_percent\", group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}, \"delay\", \"$1\", \"__name__\", \"mvs_wlm_group_delay_(.*)_percent\"))", + "instant": true, + "legendFormat": "{{sysname}}.{{group_name}} ({{delay}})", + "range": false, + "refId": "A" + } + ], + "title": "Current WLM Workload Delays by Type (Top 20)", + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "align": "auto", + "cellOptions": { + "type": "auto" + }, + "filterable": true, + "inspect": false + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "text" + }, + { + "color": "#EAB839", + "value": 40 + }, + { + "color": "red", + "value": 60 + } + ] + }, + "unit": "percent" + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Sysplex" + }, + "properties": [ + { + "id": "custom.width", + "value": 94 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Sysname" + }, + "properties": [ + { + "id": "custom.width", + "value": 95 + } + ] + }, + { + "matcher": { + "id": "byRegexp", + "options": "/.* Delay/" + }, + "properties": [ + { + "id": "custom.cellOptions", + "value": { + "type": "color-text" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Workload" + }, + "properties": [ + { + "id": "custom.width", + "value": 113 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Total Delay" + }, + "properties": [ + { + "id": "custom.width", + "value": 116 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Processor Delay" + }, + "properties": [ + { + "id": "custom.width", + "value": 145 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Operator Delay" + }, + "properties": [ + { + "id": "custom.width", + "value": 137 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "JES Delay" + }, + "properties": [ + { + "id": "custom.width", + "value": 104 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "HSM Delay" + }, + "properties": [ + { + "id": "custom.width", + "value": 107 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Device Delay" + }, + "properties": [ + { + "id": "custom.width", + "value": 123 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Enqueue Delay" + }, + "properties": [ + { + "id": "custom.width", + "value": 135 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Storage Delay" + }, + "properties": [ + { + "id": "custom.width", + "value": 131 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Subsystem Delay" + }, + "properties": [ + { + "id": "custom.width", + "value": 152 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "XCF Delay" + }, + "properties": [ + { + "id": "custom.width", + "value": 105 + } + ] + } + ] + }, + "gridPos": { + "h": 12, + "w": 24, + "x": 0, + "y": 8 + }, + "options": { + "cellHeight": "sm", + "footer": { + "countRows": false, + "fields": "", + "reducer": ["sum"], + "show": false + }, + "frameIndex": 1, + "showHeader": true, + "sortBy": [ + { + "desc": true, + "displayName": "Total Delay" + } + ] + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n avg_over_time(mvs_wlm_group_delay_percent{group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}[$__range]),\n \"__name__\",\n \"Total Delay\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n avg_over_time(mvs_wlm_group_delay_proc_percent{group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}[$__range]),\n \"__name__\",\n \"Processor Delay\",\n \"\",\n \".*\"\n)", + "format": "time_series", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n avg_over_time(mvs_wlm_group_delay_oper_percent{group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}[$__range]),\n \"__name__\",\n \"Operator Delay\",\n \"\",\n \".*\"\n)", + "format": "time_series", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "C" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n avg_over_time(mvs_wlm_group_delay_jes_percent{group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}[$__range]),\n \"__name__\",\n \"JES Delay\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "D" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n avg_over_time(mvs_wlm_group_delay_hsm_percent{group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}[$__range]),\n \"__name__\",\n \"HSM Delay\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "E" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n avg_over_time(mvs_wlm_group_delay_dev_percent{group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}[$__range]),\n \"__name__\",\n \"Device Delay\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "F" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n avg_over_time(mvs_wlm_group_delay_enq_percent{group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}[$__range]),\n \"__name__\",\n \"Enqueue Delay\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "G" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n avg_over_time(mvs_wlm_group_delay_stor_percent{group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}[$__range]),\n \"__name__\",\n \"Storage Delay\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "H" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n avg_over_time(mvs_wlm_group_delay_subs_percent{group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}[$__range]),\n \"__name__\",\n \"Subsystem Delay\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "I" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_replace(\n avg_over_time(mvs_wlm_group_delay_xcf_percent{group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}[$__range]),\n \"__name__\",\n \"XCF Delay\",\n \"\",\n \".*\"\n)", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "J" + } + ], + "title": "Average WLM Workload Delays", + "transformations": [ + { + "id": "joinByLabels", + "options": { + "value": "__name__" + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "group_type": true, + "instance": true, + "job": true, + "mvs_wlm_batch_ai": true, + "sysname": false + }, + "includeByName": {}, + "indexByName": { + "Device Delay": 11, + "Enqueue Delay": 12, + "HSM Delay": 10, + "JES Delay": 9, + "Operator Delay": 8, + "Processor Delay": 7, + "Storage Delay": 13, + "Subsystem Delay": 14, + "Total Delay": 6, + "XCF Delay": 15, + "group_name": 0, + "group_type": 1, + "instance": 2, + "job": 3, + "sysname": 5, + "sysplex": 4 + }, + "renameByName": { + "group_name": "Workload", + "sysname": "Sysname", + "sysplex": "Sysplex" + } + } + } + ], + "type": "table" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "max": 100, + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "#EAB839", + "value": 40 + }, + { + "color": "red", + "value": 60 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 12, + "w": 24, + "x": 0, + "y": 20 + }, + "interval": "${mintime}", + "options": { + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": true, + "sortBy": "Name", + "sortDesc": false, + "width": 180 + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "mvs_wlm_group_delay_percent{group_type=\"W\",sysplex=~\"${sysplex}\",sysname=~\"${sysname}\"}", + "instant": false, + "legendFormat": "{{sysname}}.{{group_name}}", + "range": true, + "refId": "A" + } + ], + "title": "WLM Workload Total Delays", + "type": "timeseries" + } + ], + "preload": false, + "tags": ["RMF"], + "templating": { + "list": [ + { + "allowCustomValue": false, + "includeAll": false, + "label": "Data Source", + "name": "datasource", + "options": [], + "query": "prometheus", + "refresh": 1, + "regex": "", + "type": "datasource" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(mvs_rmf_m3_mintime,sysplex)", + "includeAll": true, + "label": "Sysplex", + "multi": true, + "name": "sysplex", + "options": [], + "query": { + "qryType": 1, + "query": "label_values(mvs_rmf_m3_mintime,sysplex)", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "", + "sort": 1, + "type": "query" + }, + { + "allowCustomValue": false, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "hide": 2, + "name": "mintime", + "options": [], + "query": { + "qryType": 3, + "query": "query_result(max(mvs_rmf_m3_mintime{sysplex=~\"${sysplex}\"}))", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "/\\S* (\\d+) \\d*/", + "type": "query" + }, + { + "allowCustomValue": true, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(mvs_wlm_group_delay_percent{sysplex=~\"$sysplex\"},sysname)", + "includeAll": true, + "label": "Sysname", + "multi": true, + "name": "sysname", + "options": [], + "query": { + "qryType": 1, + "query": "label_values(mvs_wlm_group_delay_percent{sysplex=~\"$sysplex\"},sysname)", + "refId": "PrometheusVariableQueryEditor-VariableQuery" + }, + "refresh": 2, + "regex": "", + "sort": 1, + "type": "query" + } + ] + }, + "timepicker": { + "refresh_intervals": ["1m", "5m", "15m", "30m", "1h", "2h", "1d"] + }, + "timezone": "browser", + "title": "z/OS WLM Workload Delays" +} diff --git a/pm-client/CHANGELOG.md b/pm-client/CHANGELOG.md index 89a3c311..fc33d8e8 100644 --- a/pm-client/CHANGELOG.md +++ b/pm-client/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 2.6.6 (2024-09-11) +- The Performance Monitoring has been updated to include the latest Java version 17. + +## 2.6.5 (2024-06-05) +- PM doesn't gather any data fix + ## 2.6.4 (2024-03-04) - Upgrade to Java 17. diff --git a/spreadsheet-reporter/CHANGELOG.md b/spreadsheet-reporter/CHANGELOG.md new file mode 100644 index 00000000..fdf38997 --- /dev/null +++ b/spreadsheet-reporter/CHANGELOG.md @@ -0,0 +1,364 @@ +# Change Log + +## 5.5.9 (2025-05-27) + +- New Java 17 Runtime +- Fix Secure FTP connection + +## 5.5.8 (2024-09-11) + +- The Spreadsheet Reporter has been updated to include the latest Java version 17. + +## 5.5.7 + +- Support CPU reports with multi-page IFL information +- Fix WLMGL working set creation +- Reset buttons in CF Trend macro +- General maintenance + +## 5.5.6 + +- Upgrade to Java 17. +- Sort by date/time no longer default in RepCFSys, RepSubChn1 and RepSubChn2 graphs. + +## 5.5.5 + +- General maintenance. +- Support for AI-infused batch initiators in WLMGL report. + +## 5.5.4 + +- New Java 11 Runtime. + +## 5.5.3 + +- Update XML report display processing. +- Browse XML report through local web server. + +## 5.5.2 + +- New Java 11 Runtime. +- z/OS 3.1 support. + +## 5.5.1 + +- Date ordering fix for CF reports. + +## 5.5.0 + +- Upgrade to Java 11. + +## 5.4.46 + +- New Java 8 Runtime. + +## 5.4.45 + +- Keep remote dataset at transfer failure. +- Additional XCF Spreadsheet performance optimizations. +- CF Spreadsheet named range count overflow fix. +- Adapt to the new XCF report format. +- Fix CF report parsing. + +## 5.4.44 + +- WLM Enclave Transaction metrics parsing. + +## 5.4.43 + +- Fixing "Error(s) occurred during conversion." while creating working set. +- XCF Spreadsheet performance optimization. + +## 5.4.42 + +- New Java 8 Runtime. + +## 5.4.41 + +- New Java 8 Runtime. + +## 5.4.40 + +- Workload Activity report working set loading to spreadsheet regression fix. +- Coupling Facility Trend Report fix for large request number, change Long to Double. + +## 5.4.39 + +- Fix for CF and Workload Activity report parser to support V2R5 version. + +## 5.4.38 + +- Use default translation table while downloading report via FTP. +- Update Online Help. +- Update signing certificate. + +## 5.4.37 + +- Fixed Coupling Facility Trend Report, structure was missing in ReptrdStr and RepIntStr tabs. + +## 5.4.36 + +- Add new fields from XCF Signaling Report Path Usage Statistics. + +## 5.4.35 + +- New Java 8 Runtime. + +## 5.4.34 + +- Fixed RepCFSys tab in Spreadsheet Report failing to update the report heading. +- Fixed unexpected text RepIntAct. + +## 5.4.33 + +- New Java 8 Runtime. + +## 5.4.32 + +- New FFX/QSA fields in CRYPTO report spreadsheet. + +## 5.4.31 + +- New Java 8 Runtime. + +## 5.4.30 + +- New Java 8 Runtime. + +## 5.4.29 + +- Postprocessor Report Layout Changes. + +## 5.4.28 + +- Postprocessor Report Layout Changes. + +## 5.4.27 + +- New Java 8 Runtime. + +## 5.4.26 + +- New Java 8 Runtime. + +## 5.4.25 + +- New Java 8 Runtime. + +## 5.4.24 + +- Postprocessor Report Layout Changes. + +## 5.4.23 + +- Postprocessor Report Layout Changes. + +## 5.4.22 + +- New Crypto Hardware Activity Trend Report Spreadsheet. + +## 5.4.21 + +- New Java 8 Runtime. + +## 5.4.20 + +- Integrity fixes. + +## 5.4.19 + +- Support for changed report layout. +- New Java 8 Runtime. + +## 5.4.18 + +- New Java 8 Runtime. + +## 5.4.17 + +- XCF Trend Report Spreadsheet (Rmfr9xcf.xls): + Spreadsheet is now able to handle empty reports. + +## 5.4.16 + +- New Java 8 Runtime. + +## 5.4.15 + +- New Java 8 Runtime. + +## 5.4.14 + +- New Java 8 Runtime. + +## 5.4.13 + +- Support for changed report layout. + +## 5.4.12 + +- New Java 8 Runtime. + +## 5.4.11 + +- Support for changed report layout. + +## 5.4.10 + +- Support for changed report layout. +- New Java 8 Runtime. + +## 5.4.9 + +- Support for changed report layout. + +## 5.4.8 + +- New Java 8 Runtime. +- Enhance Excel compatibility. + +## 5.4.7 + +- Partition Data Report: LPARs may be incorrect converted. +- Support of Asynchronous duplexing CF Lock Structures. + +## 5.4.6 + +- Support for Super PAV Alias Tuning. +- New Java 8 Runtime. + +## 5.4.5 + +- Partition Data Report: IFL LPARs may be incorrect converted. + +## 5.4.4 + +- Support of LPAR Group Absolute Capping. +- CF Report: + Large number of requests in the CF to CF section maybe incorrect converted. +- Addressed passive FTP connection problem. + +## 5.4.3 + +- New Java 8 Runtime. + +## 5.4.2 + +- Support of WLM Workload Containers for Mobile Pricing. + +## 5.4.1 + +- New Java 8 Runtime. + +## 5.4.0 + +- New Java 8 Runtime. + +## 5.3.14 + +- New Java Runtime. + +## 5.3.13 + +- New Java Runtime. + +## 5.3.12 + +- Support for changed report layout. +- Enhance Excel compatibility. + +## 5.3.11 + +- Support for new RMF Postprocessor Reports in XML format. +- Coupling Facility Trend Report Spreadsheet (Rmfr9cf.xls): + - RepTrdStr sheet: Incorrect system list may be created (only systems available in the first + report are honored) (PR220062MAI). + - RepCFTrd sheet: Add metric: Effective CPs. +- XCF Trend Report Spreadsheet (Rmfr9xcf.xls): + PathOverview Sheet may report incorrect target system name. +- Channel Overview Report Spreadsheet (Rmfx9chn.xls): + Channel Utilization on LPAR level may incorrect reported. +- Coupling Facility Activity Report may be incorrect converted. +- XCF Activity Report may be incorrect converted. +- Workload Activity Report may be incorrect converted. + +## 5.3.10 + +- New Certificate. + +## 5.3.9 + +- Support for new RMF Postprocessor Reports in XML format. +- Coupling Facility Trend Report: RepTrdStr chart shows incorrect numbers data for changed requests. + +## 5.3.8 + +- System Overview Spreadsheet (Rmfy9ovw.xls): Data analysis section on Summary sheet shows + incorrect page faults (PR210056MAI). +- LPAR Trend Report Spreadsheet (Rmfr9lp.xls): + % of CEC Guaranteed /Max is incorrect calculated for none-CP Partitions (PR210092MAI). +- Workload Activity Trend Report Spreadsheet: Application Utilization for Report Classes may be + incorrect reported (PR210109MAI). +- Creating corrupted report index file when registering large report working set (PC/T0321MAI). + +## 5.3.7 + +- Support for new RMF Postprocessor Reports in XML format. +- Converted Overview Record is limited to 8200 rows (PR130182MAI). + +## 5.3.6 + +- New Java runtime. + +## 5.3.5 + +- New Certificate. + +## 5.3.4 + +Spreadsheet Reporter:. +- MigrateWSetsToXLS.bat cause java.lang.ArrayIndexOutOfBoundsException (at + com.ibm.erb.rmfsr.wset.ErbXLSFileInstance._extractSST (ErbXLSFileInstance.java:646) PR110135MAI. +- Processing Working Sets cause error messages 'Cannot process data...' when system regional + settings are switched to Turkish (may also apply to other regions) PR110136MAI. +- Coupling Facility Trend Report:Processing data may cause error message + "Cannot process data..." (PR120042MAI). +- Coupling Facility Trend Report:Modifing the report option on the RepTrdStr sheet may cause + Visual Basic run-time-error 1004 message (PC/T0318MAI). +- No Response Time Distribution may be displayed on the RepRsp worksheet (PR120058MAI). +- Workload Activity Spreadsheet (Rmfy9wkl.xls): The WeekChart may display incorrect date values (PR120079MAI). +- Incorrect conversion of z/OS Version number of the Workload Activity Spreadsheet (PR120088MAI). + +## 5.3.3 + +Spreadsheet Reporter: +- XML Report Support update. +- Workload Activity Report: Large CPU Service Times may be incorrect converted (PR110118MAI). + +## 5.3.2 + +Spreadsheet Reporter: +- XML Report Support. + +## 5.3.1 + +Spreadsheet Reporter: +- WLGML Report may be incorrect converted (PR100088MAI). +- Rangenames with nummeric sign "#" cannot be handled (PR100116MAI). +- Numbers of Processors in the Partition Data Report may be incorrect converted (PR100135MAI). +- Using CreateRptWset.bat file may cause error message "Internal index files are not accessible." + (PR100136MAI). +- Paging Activity Report may be incorrect converted (PR100142MAI). +- Invalid XLS file generated based on overview record (PR100143MAI). +- Corrupt RMFOV.XLS file cause SR hangup without any error messages (PR100144MAI). +- The Spreadsheet Reporter cannot delete or rename working sets (PR100149MAI). +- Processing data may cause error message "The Report Working Set may not contain the required..." + (PR100114MAI). +- Workload Activity Report: QMPL delays of may be incorrect converted (PR110076MAI). + +Spreadsheet Macros: +- XCF Trend Report: The System name may appear mutliple times in the system list (PR100110MAI). +- Channel Overview Report: When adding data to the macro, the workload busy percent is incorrect + calculated (PR100115MAI). +- LParsTrd sheet may report incorrect Physical Total Utilization for the Physical Partition (PR100146MAI). +- RMF System Overview Report Macro: Adding data may cause error message "Run-time error '9" (PR100148MAI).