Using PromClient for Performance Monitoring of WinCC OA

Overview

PromClient, equipped with predefined metrics, is a tool for performance monitoring in WinCC OA environments.

Setup: Configure PromClient to use the metrics/defaultMetrics.yaml file to monitor specific WinCC OA data points. Launch it with the NodeJs manager using the command arguments:
promClient.js -f metrics/defaultMetrics.yaml

Once running, access metrics at <HOSTNAME>:3001/metrics. Ensure Prometheus is configured to scrape data from this PromClient host.

Prometheus Configuration Example

Here's a basic setup for Prometheus in YAML, specifying the scraping interval and target:
scrape_configs:
  - job_name: 'winccoa'
    scrape_interval: 5s

    static_configs:
      - targets: ['WINCCOA-HOST:3001']
        labels:
          service: 'os-service'
          group: 'production'

Custom Commands and Tags

The client interprets specific tags in the YAML file as custom commands (e.g., !dpGet, !dpConnect, !dpQuery, and !globalVariable). These are used to fetch data, establish connections to data points, execute SQL-like queries, and reference global variables, respectively.

Introduction to Prometheus

Prometheus is an open-source monitoring and alerting toolkit, widely used for its simplicity, robustness and effectiveness in handling time-series data. It collects and stores metrics as time-series data, meaning data that is stored along with the time stamp at which it was recorded. Metrics can be queried using PromQL, a flexible query language offered by Prometheus.