Die von diesem Client verwendete YAML-Datei ist in mehrere Abschnitte unterteilt, die jeweils einen bestimmten Zweck erfüllen:
Tabelle 1. YAML-Dateistruktur
|
|
globalVariables |
Definiert globale Variablen, die in der gesamten YAML-Datei verwendet werden können. |
defaultLabels |
Legt Standardbeschriftungen fest, die auf alle Metriken angewendet werden. |
metricObjects |
Definiert die Metriken, die an Prometheus übermittelt werden sollen, einschließlich ihrer Typen und spezifischen Bezeichnungen. |
metricData |
Gibt die zu erfassenden Datenpunkte zusammen mit den anzuwendenden Verarbeitungsfunktionen an. |
Optionale Eigenschaften
- labelNames: Ein Array von Bezeichnungen für die Metrik. Alle Bezeichnungen, welche die Metrik unterstützt, müssen hier angegeben werden.
- resetAfterScrape [Default: false]: Wenn diese Eigenschaft auf "true" gesetzt ist, stellt sie sicher, dass die Daten und Labels der Metrik nach jedem Scrape durch
Prometheus gelöscht werden. Dieses Zurücksetzen bezieht sich speziell auf die im Metrik-Objekt gespeicherten Daten und stellt sicher, dass diese nicht über einen einzelnen
Scrape-Zyklus hinaus bestehen bleiben.
Metriktypen
Tabelle 2. Metriktypen
|
|
Counter |
- `name`, `help`, `labelNames`
- Inkremente über die Zeit, typischerweise zum Zählen von Vorkommnissen
|
Gauge |
- `name`, `help`, `labelNames`
- Stellt einen Wert dar, der steigen oder fallen kann.
|
Histogram |
|
Summary |
|
MovingAvgGauge |
- `name`, `help`, `labelNames`
- `avgWindowSize`: Anzahl der Datenpunkte für die Mittelwertbildung.
- `rateOfChange`: Boolescher Wert zur Berechnung der Änderungsrate. Standardwert false.
- Internal parameters (*nicht für den Benutzer zu verwenden*): -
- `oaInternalCalculation`: oaInternalCalculation`: Wenn dieser Parameter auf `true` gesetzt ist, ermöglicht er in Verbindung mit `rateOfChange`, das
ebenfalls auf `true` gesetzt ist, die Berechnung der Änderungsrate auf der Grundlage der Summe der Werte innerhalb eines bestimmten Fensters von
Datenpunkten. Diese Funktion wurde speziell für die Verwendung im Skript EventsStats entwickelt, das WinCC OA-Statistiken
überwacht, z. B. die Anzahl der Meldungen in einem bestimmten Zeitraum. Diese spezielle Berechnung ist auf die besonderen Anforderungen der
Datenverarbeitung bei der Überwachung von WinCC OA zugeschnitten
. $$
rateOfChange = \frac{\sum_{i=0}^{avgWindowSize}sampleData[i]}{currentTime-sampleTime[0]}
$$
Weitere Informationen über Standardmetriken finden Sie in der Online-Dokumentation https://github.com/siimon/prom-client).
|
Beispiele
**Counter**:
```yaml
TotalRequests:
help: "Total number of requests received"
type: "Counter"
```
**Gauge**:
```yaml
ServerTemperature:
help: "Current temperature of the server"
type: "Gauge"
labelNames: "serverId"
```
**Histogram**:
```yaml
RequestDuration:
help: "Duration of HTTP requests in milliseconds"
type: "Histogram"
buckets: [0.1, 0.5, 1, 5, 10]
```
**Summary**:
```yaml
ResponseSizes:
help: "Sizes of HTTP responses"
type: "Summary"
percentiles: [0.5, 0.9, 0.99]
```
**MovingAvgGauge**:
```yaml
AverageLoad:
help: "Average system load over a period"
type: "MovingAvgGauge"
avgWindowSize: 5
rateOfChange: false
```