MetricInfo: Bereichsbezogen, global

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 2 Minuten Lesedauer
  • Die MetricInfo- API bietet Methoden, um zu überprüfen, ob sich eine Metrik in der Datenbank MetricBase befindet, und gegebenenfalls, um ihre Aufbewahrungsrichtlinie zu melden. Aufbewahrungsrichtlinien werden in Minuten angegeben.

    Sie können diese Klasse in bereichsbezogenen und globalen Serverskripts aufrufen. Wenn Sie die MetricInfo -Klasse verwenden, verwenden Sie den Namespace-Bezeichner sn_clotho.

    Diese Klasse ist Teil von MetricBase Anwendung.

    MetricInfo – MetricInfo (Zeichenfolgentabelle, Zeichenfolgenmetrik)

    Erstellt eine Instanz der MetricInfo -Klasse.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    table Zeichenfolge Name der Metriktabelle, die in der Tabelle „Zeitreihenmetriken“ [sys_metric] aufgeführt wird.
    Metrik Zeichenfolge Name des Metrikfelds, das in der Tabelle „Zeitreihenmetriken“ [sys_metric] aufgeführt ist. Dieser Feldname muss dem Tabellennamen zugeordnet werden.

    Das folgende Beispiel zeigt, wie ein MetricInfo- Objekt mit der Höhenmetrik (mb_demo_mt_altitude) erstellt wird, die der Tabelle „Drohnen“ [mb_demo_drone] zugeordnet ist.

    var metricInfo =  new sn_clotho.MetricInfo('mb_demo_drone','mb_demo_mt_altitude');

    MetricInfo – getRetentionSchedulesInMinutes()

    Ruft die Zeitpläne für Aufbewahrungsrichtlinien der angegebenen Metrik ab.

    Siehe auch MetricBase-Aufbewahrungsrichtlinien.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 3. Ergebnisse
    Typ Beschreibung
    Objekt JSON-Objekt mit Schlüssel-Wert-Paaren, die die Zeitpläne für Aufbewahrungsrichtlinien (in Minuten) für die angegebene Metrik darstellen, die in der Tabelle „Aufbewahrungsrichtlinien“ [sys_metric_retention_policy] aufgeführt ist.
    Für jeden Zeitplan für Aufbewahrungsrichtlinien, der zu der Metrik gehört, enthält das -Objekt ein entsprechendes Schlüssel-Wert-Paar, das die Aufbewahrungsdauer dem Stichprobenzeitraum zuordnet.
    • Schlüssel: Aufbewahrungsdauer des Zeitplans der Aufbewahrungsrichtlinie in Minuten.

      Datentyp: Zeichenfolge

    • Wert: Probenahmezeitraum des Zeitplans der Aufbewahrungsrichtlinie in Minuten.

      Datentyp: Zahl

    "<retentionDuration>": <samplingPeriod>

    Das folgende Beispiel zeigt, wie Sie die Zeitpläne der Aufbewahrungsrichtlinie durchlaufen und eine Protokollnachricht kompilieren. Die Nachricht enthält die von Minuten in Tage konvertierten Aufbewahrungsdauern mit den entsprechenden Stichprobenzeiträumen.

    // Function to convert minutes to days
    function toDays(minutes) {
     return minutes / 60 / 24;
    };
    
    var metricInfo = new sn_clotho.MetricInfo('mb_demo_drone','mb_demo_mt_altitude');
    var schedules = metricInfo.getRetentionSchedulesInMinutes();
    var log = '';
    
    // Compiles a log message with retention schedules
    for (var duration in schedules) {
     log += "Retention duration is: " + toDays(duration) +
     " days, Sampling period is: " + schedules[duration] + " minutes\n";
    }
    
    gs.info(log);

    Ausgabe:

    Retention duration is: 8 days, Sampling period is: 1 minutes
    Retention duration is: 94 days, Sampling period is: 10 minutes
    Retention duration is: 397 days, Sampling period is: 60 minutes

    MetricInfo – isValid()

    Gibt an, ob die angegebene Metrik der in einem MetricInfo- Objekt definierten Tabelle zugeordnet ist.

    Tabelle : 4. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 5. Ergebnisse
    Typ Beschreibung
    Boolean

    Kennzeichnung, die angibt, ob die in einem MetricInfo- Objekt angegebene Metrik der angegebenen Tabelle zugeordnet ist.

    Gültige Werte:
    • wahr: Die angegebene Metrik ist gültig.
    • „falsch“: Die angegebene Metrik oder Tabelle ist entweder nicht vorhanden, oder die Metrik ist der Tabelle nicht zugeordnet.

    Das folgende Beispiel zeigt, wie Sie überprüfen, ob die Metrik „Höhe“ (mb_demo_mt_altitude) in der Tabelle „Drohnen“ [mb_demo_drone] vorhanden ist, und wie Sie ggf. den Aufbewahrungszeitplan zurückgeben. Die Beispielausgabe gibt die Richtliniendauer in Minuten an, die dem Intervall-Sampling-Zeitraum zugeordnet ist.

    var metricInfo =  new sn_clotho.MetricInfo('mb_demo_drone','mb_demo_mt_altitude');
    if (metricInfo.isValid())
    {
      var retentionSchedules = metricInfo.getRetentionSchedulesInMinutes();
      gs.info(JSON.stringify(retentionSchedules, null, 2));
    }
    else
    {
      gs.info("metricInfo is invalid");
    }

    Ausgabe:

    {
      "11520": 1,
      "135360": 10,
      "571680": 60
    }