Erweitern der Überwachungskonfiguration mit benutzerdefinierten Datenpunkten

Prometheus-Clients bieten die Flexibilität, mehrere Konfigurationsdateien zu verarbeiten. Dadurch können Sie benutzerdefinierte Datenpunkte hinzufügen und den standardmäßigen Überwachungsbereich erweitern. Nutzen Sie diese Funktion, indem Sie eine separate Datei mit Ihren maßgeschneiderten Datenpunkten erstellen. Das folgende Beispiel zeigt, wie Sie dies durch Hinzufügen einer neuen Datei und Veröffentlichen eines einzelnen Datenpunkts auf dem Prometheus-Server umsetzen können.

Schritte

  1. Erstellen einer benutzerdefinierten Metrikdatei: Erstellen Sie innerhalb Ihres Projekts eine Datei namens customMetrics.yaml (oder ähnlich) in einem geeigneten Verzeichnis (z. B. data/metrics).
    Anmerkung: Der PromClient sucht in allen Ordnern, die in Ihrem Projekt-config-Datei definiert sind.
  2. Definieren Sie Ihre eigene Metrik: Bearbeiten Sie customMetrics.yaml mit dem folgenden YAML-Snippet:
    globalVariables:
    defaultLabels:
    
    metricObjects:
      CustomValue:
        help: Custom metric value
        type: Gauge
        labelNames:
          - type
      
    metricData:
      - objectType: CustomValue
        value: !dpGet
          dpId: ExampleDP_Arg1.:_original.._value
        labels:
          type: "Custom Value"
        function: set
    Dadurch wird eine Metrik mit dem Namen CustomValue vom Typ Gauge mit einem einzelnen Label typ erstellt. Die Daten für diese Metrik stammen aus der dpGet-Methode, die auf ExampleDP_Arg1-Datenpunkt referenziert.

    Die Funktion set stellt sicher, dass das Messgerät den neuesten Wert wiedergibt. Diese Metrik erbt die Standardbeschriftungen aus der übergeordneten Konfiguration.

  3. Konfigurieren Sie den Prometheus-Client: Ändern Sie Ihre Prometheus-Client-Progs so, dass sie beide Konfigurationsdateien enthalten:
    promClient.js -f metrics/defaultMetrics.yaml -f
              data/metrics/customMetrics.yaml
  4. Starten Sie den Client und Monitor: Starten Sie Ihren Prometheus-Client. Der neu definierte CustomValue-Metrik wird nun neben den Standardmetriken im Prometheus-Server angezeigt.
    Anmerkung: Beachten Sie, dass Prometheus Health Reporting kein Ersatz für eine ordnungsgemäße Wertearchivierung ist. Die Abfragerate für den Erhalt von Zustandsmetriken ist in der Regel sehr niedrig eingestellt, und die Anzahl der archivierten Datenpunkte ist ebenfalls niedrig. Trotz dieser Einschränkungen wurde die Funktion getestet und bestätigt, dass sie innerhalb der erwarteten Leistungsgrenzen funktioniert und bis zu 10.000 einzelne konfigurierte DPEs unterstützt, die vom WinCC OA-System gemeldet werden.