MetricBase-Zeitreihen-API

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 49 Minuten Lesedauer
  • Die MetricBase Time Series- API bietet Endpunkte zum Einfügen von Daten in, zum Abrufen von Informationen aus und zum Ausführen von Transformationen für eine MetricBase -Datenbank.

    Diese APIs können nur verwendet werden, wenn das Plugin MetricBase (com.snc.clotho) installiert und aktiviert ist.

    Zum Schreiben in diese API erforderliche Rolle: Clotho_rest_put.

    Die Beispiele in diesem Abschnitt wurden mit Daten im MetricBase-Plugin (com.snc.clotho) erstellt.

    MetricBase Time Series – GET /now/clotho/table/{table}/{subject}/{metric}

    Ruft die angegebenen Zeitreihendaten aus der Datenbank MetricBase ab.

    URL-Format

    Versionierte URL: /api/now/{api_version}/clotho/table/{table}/{subject}/{metric}

    Unterstützte Anforderungsparameter

    Tabelle : 1. Pfadparameter
    Name Beschreibung
    api_version Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden.

    Datentyp: Zeichenfolge

    metric Name der Spalte in der im Parameter subject angegebenen Tabelle, die als Metrik verwendet werden soll.

    Datentyp: Zeichenfolge

    Betreff Sys_id des GlideRecord, der dieser Serie zugeordnet ist.

    Datentyp: Zeichenfolge

    Tabelle Name der Tabelle, die den dieser Serie zugeordneten GlideRecord enthält.

    Datentyp: Zeichenfolge

    Tabelle : 2. Abfrageparameter
    Name Beschreibung
    sysparm_display_value Kennzeichnung, die angibt, ob die Ergebnisdaten mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet werden sollen, wenn keine andere Bezeichnung angegeben ist.
    Gültige Werte:
    • true: Ergebnisdaten werden mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet.
    • false: Ergebnisdaten werden nicht mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet.

    Datentyp: Boolesch

    Standardwert: false

    sysparm_end Erforderlich. Endzeit des Auswertungszeitraums. Ein leerer oder fehlender Wert wird als aktuelle Uhrzeit behandelt.

    Datentyp: Zeichenfolge

    Format: ISO 8601 (UTC), entweder:
    • Absolutes Datumsformat [JJJJ-MM-TTThh:mm:ss], z. B. 2019-03-20T17:04:55.
    • Relativ zum aktuellen Zeitdauerformat [P(n)Y(n)M(n)DT(n)H(n)M(n)S], z. B. P1M.
    sysparm_start Erforderlich. Startzeit des Auswertungszeitraums. Mit dem Sonderwert all kann die Startzeit als aktuelle Zeit abzüglich der maximalen Aufbewahrungsdauer für die angegebenen Metriken festgelegt werden. Ein leerer oder fehlender Wert wird als impliziter allbehandelt.

    Datentyp: Zeichenfolge

    Format: ISO 8601 (UTC), entweder:
    • Absolutes Datumsformat [JJJJ-MM-TTThh:mm:ss], z. B. 2019-03-20T17:04:55
    • Relativ zum aktuellen Zeitdauerformat [P(n)Y(n)M(n)DT(n)H(n)M(n)S], z. B. P1M.
    Tabelle : 3. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    Keine

    Kopfzeilen

    Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST-API verwendet werden, finden Sie unter Unterstützte REST-API-Header.

    Tabelle : 4. Anforderungskopfzeilen
    Kopfzeile Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützt nur application/json.
    Tabelle : 5. Antwortkopfzeilen
    Kopfzeile Beschreibung
    Keine

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST-API verwendet werden, finden Sie unter HTTP-Antwortcodesder REST-API.

    Tabelle : 6. Statuscodes
    Statuscode Beschreibung
    200 Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet.
    401 Nicht autorisiert. Die Anmeldeinformationen sind falsch oder wurden nicht übergeben.
    500 Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler.

    Antworttextparameter (JSON oder XML)

    Name Beschreibung
    label Die Bezeichnung, die zum Identifizieren des Ergebnissatzes dieser Metrik verwendet wird.

    Datentyp: Zeichenfolge

    SerienRef Datenreihenergebnisse.

    Datentyp: Array

    "seriesRef": [
      {
        "metric": "String",
        "subject": "String",
        "table": "String"
      }
    ]
    seriesRef.metric Der Name der Metrik, aus der die Datenreihe abgerufen wurde. Wird nur angezeigt, wenn das Objekt metrics in der Anforderung übergeben wird.

    Datentyp: Zeichenfolge

    seriesRef.subject Die sys_id des Datenreihen-Datensatzes. Befindet sich in der in seriesRef.tableangegebenen Tabelle.

    Datentyp: Zeichenfolge

    seriesRef.table Der Name der Tabelle, aus der die Datenreihe abgerufen wurde.

    Datentyp: Zeichenfolge

    Werte Die transformierten Reihenwerte.

    Datentyp: Array

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    werte.timestamp Der ISO 8601-Zeitstempel des Werts.

    Datentyp: Zeichenfolge

    values.value Die Metrikwerte.

    Datentyp: Zahl

    cURL-Anforderung

    curl "https://instance.servicenow.com/api/now/v1/clotho/
      table/mb_demo_drone/626b051787333200a328c5b836cb0b99/
      mb_demo_mt_altitude?sysparm_start=2019-03-20T17%3A04%3A55
      &sysparm_end=2019-03-20T17%3A09%3A55" \
    --request GET \
    --header "Accept:application/json" \
    --user "username":"password"

    {
      "seriesRef": {
        "subject": "626b051787333200a328c5b836cb0b99",
        "table": "mb_demo_drone",
        "metric": "mb_demo_mt_altitude"
      },
      "label": "626b051787333200a328c5b836cb0b99:
                mb_demo_drone|mb_demo_mt_altitude",
      "values": [
        {
          "timestamp": "2019-03-20T17:05:00Z",
          "value": 83.150185
        },
        {
          "timestamp": "2019-03-20T17:06:00Z",
          "value": 83.46074
        },
        {
          "timestamp": "2019-03-20T17:07:00Z",
          "value": 83.83104
        },
        {
          "timestamp": "2019-03-20T17:08:00Z",
          "value": 84.260635
        },
        {
          "timestamp": "2019-03-20T17:09:00Z",
          "value": 84.749
        }
      ]
    }
    

    MetricBase Time Series – GET /now/clotho/transform/{table}/{metric}

    Transformiert die angegebenen Daten basierend auf den angegebenen Parametern.

    URL-Format

    Versionierte URL: /api/now/{api_version}/clotho/transform/{table}/{metric}

    Unterstützte Anforderungsparameter

    Tabelle : 7. Pfadparameter
    Name Beschreibung
    api_version Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden.

    Datentyp: Zeichenfolge

    metric Name der Spalte in der im Parameter subject angegebenen Tabelle, die als Metrik verwendet werden soll.

    Datentyp: Zeichenfolge

    Tabelle Name der Tabelle, die den dieser Serie zugeordneten GlideRecord enthält.

    Datentyp: Zeichenfolge

    Tabelle : 8. Abfrageparameter
    Name Beschreibung
    sysparm_display_value Kennzeichnung, die angibt, ob die Ergebnisdaten mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet werden sollen, wenn keine andere Bezeichnung angegeben ist.
    Gültige Werte:
    • true: Ergebnisdaten werden mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet.
    • false: Ergebnisdaten werden nicht mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet.

    Datentyp: Boolesch

    Standardwert: false

    sysparm_end Erforderlich. Endzeit des Auswertungszeitraums. Ein leerer oder fehlender Wert wird als aktuelle Uhrzeit behandelt.

    Datentyp: Zeichenfolge

    Format: ISO 8601 (UTC), entweder:
    • Absolutes Datumsformat [JJJJ-MM-TTThh:mm:ss], z. B. 2019-03-20T17:04:55.
    • Relativ zum aktuellen Zeitdauerformat [P(n)Y(n)M(n)DT(n)H(n)M(n)S], z. B. P1M.
    sysparm_query Codierte Abfragezeichenfolge zum Suchen der Betreffdatensätze.

    Datentyp: Zeichenfolge

    Standard: Keine

    sysparm_start Erforderlich. Startzeit des Auswertungszeitraums. Mit dem Sonderwert all kann die Startzeit als aktuelle Zeit abzüglich der maximalen Aufbewahrungsdauer für die angegebenen Metriken festgelegt werden. Ein leerer oder fehlender Wert wird als impliziter allbehandelt.

    Datentyp: Zeichenfolge

    Format: ISO 8601 (UTC), entweder:
    • Absolutes Datumsformat [JJJJ-MM-TTThh:mm:ss], z. B. 2019-03-20T17:04:55
    • Relativ zum aktuellen Zeitdauerformat [P(n)Y(n)M(n)DT(n)H(n)M(n)S], z. B. P1M.
    sysparm_subject_limit Begrenzen Sie die Größe des Betreff-Abfrageergebnisses.

    Datentyp: Zahl

    Standard: 10.000

    sysparm_transforms Kommagetrennte Liste von Transformationen.
    Gültige Transformationen:
    • Hinzufügen
    • avg
    • label
    • mul
    • erneut berechnen
    • sum
    • top

    Datentyp: Zeichenfolge

    Standard: Keine

    Tabelle : 9. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    Keine

    Kopfzeilen

    Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST-API verwendet werden, finden Sie unter Unterstützte REST-API-Header.

    Tabelle : 10. Anforderungskopfzeilen
    Kopfzeile Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützte Typen: application/json oder application/xml.

    Standard: application/json

    Tabelle : 11. Antwortkopfzeilen
    Kopfzeile Beschreibung
    Keine

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST-API verwendet werden, finden Sie unter HTTP-Antwortcodesder REST-API.

    Tabelle : 12. Statuscodes
    Statuscode Beschreibung
    200 Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet.
    401 Nicht autorisiert. Die Anmeldeinformationen sind falsch oder wurden nicht übergeben.
    500 Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler.

    Antworttextparameter (JSON oder XML)

    Name Beschreibung
    label Die Bezeichnung, die zum Identifizieren des Ergebnissatzes dieser Metrik verwendet wird.

    Datentyp: Zeichenfolge

    SerienRef Datenreihenergebnisse.

    Datentyp: Array

    "seriesRef": [
      {
        "metric": "String",
        "subject": "String",
        "table": "String"
      }
    ]
    seriesRef.metric Der Name der Metrik, aus der die Datenreihe abgerufen wurde. Wird nur angezeigt, wenn das Objekt metrics in der Anforderung übergeben wird.

    Datentyp: Zeichenfolge

    seriesRef.subject Die sys_id des Datenreihen-Datensatzes. Befindet sich in der in seriesRef.tableangegebenen Tabelle.

    Datentyp: Zeichenfolge

    seriesRef.table Der Name der Tabelle, aus der die Datenreihe abgerufen wurde.

    Datentyp: Zeichenfolge

    Werte Die transformierten Reihenwerte.

    Datentyp: Array

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    werte.timestamp Der ISO 8601-Zeitstempel des Werts.

    Datentyp: Zeichenfolge

    values.value Die Metrikwerte.

    Datentyp: Zahl

    cURL-Anforderung

    curl "https://instance.servicenow.com/api/now/v1/clotho/
      transform/mb_demo_drone/mb_demo_mt_speed?
      sysparm_query=model%3DKingfisher%20Phantom&
      sysparm_start=2019-03-25T17%3A04%3A55&
      sysparm_end=2019-03-25T17%3A05%3A10" \
    --request GET \
    --header "Accept:application/json" \
    --user "username":"password"

    Ausgabe:

    [
      {
        "seriesRef": {
          "subject": "2a6b051787333200a328c5b836cb0b92",
          "table": "mb_demo_drone",
          "metric": "mb_demo_mt_speed"
        },
        "label": "2a6b051787333200a328c5b836cb0b92:mb_demo_drone
                 |mb_demo_mt_speed",
        "values": [
          {
            "timestamp": "2019-03-25T17:05:00Z",
            "value": 33.67892
          }
        ]
      },
      {
        "seriesRef": {
          "subject": "666b051787333200a328c5b836cb0b92",
          "table": "mb_demo_drone",
          "metric": "mb_demo_mt_speed"
        },
        "label": "666b051787333200a328c5b836cb0b92:mb_demo_drone
                 |mb_demo_mt_speed",
        "values": [
          {
            "timestamp": "2019-03-25T17:05:00Z",
            "value": 41.94985
          }
        ]
      },
      {
        "seriesRef": {
          "subject": "a26b051787333200a328c5b836cb0b92",
          "table": "mb_demo_drone",
          "metric": "mb_demo_mt_speed"
        },
        "label": "a26b051787333200a328c5b836cb0b92:mb_demo_drone
                 |mb_demo_mt_speed",
        "values": [
          {
            "timestamp": "2019-03-25T17:05:00Z",
            "value": 37.74187
          }
        ]
      },
      {
        "seriesRef": {
          "subject": "ea6b051787333200a328c5b836cb0b92",
          "table": "mb_demo_drone",
          "metric": "mb_demo_mt_speed"
        },
        "label": "ea6b051787333200a328c5b836cb0b92:mb_demo_drone
                 |mb_demo_mt_speed",
        "values": [
          {
            "timestamp": "2019-03-25T17:05:00Z",
            "value": 34.914192
          }
        ]
      },
      {
        "seriesRef": {
          "subject": "ee6b051787333200a328c5b836cb0b91",
          "table": "mb_demo_drone",
          "metric": "mb_demo_mt_speed"
        },
        "label": "ee6b051787333200a328c5b836cb0b91:mb_demo_drone
                 |mb_demo_mt_speed",
        "values": [
          {
            "timestamp": "2019-03-25T17:05:00Z",
            "value": 44.170887
          }
        ]
      }
    ]
    

    MetricBase Time Series – POST /now/clotho/acumulate

    Sammelt Metrikwerte zum angegebenen Zeitstempel und speichert das Ergebnis in der Datenbank, anstatt den Wert zu überschreiben.

    Verwenden Sie diese API , um Metriken zu verarbeiten, die für eine Akkumulation summiert werden können, z. B. Kilowattstunden (kWh) Strom. Accumulate ruft für jede Metrik zum angegebenen Zeitstempel auf. Zum Beispiel würden gesammelte Kilowattstunden für eine Heizkörper-, einen Elektro-Wasserkocher- und eine Waschmaschine drei Anrufe zur akkumulieren führen.

    URL-Format

    Versionierte URL: /api/now/{api_version}/clotho/ackumulate

    Unterstützte Anforderungsparameter

    Tabelle : 13. Pfadparameter
    Name Beschreibung
    api_version Optional. Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden.

    Datentyp: Zeichenfolge

    Tabelle : 14. Abfrageparameter
    Name Beschreibung
    default_value Standardwert für die Akkumulation zu einem bestimmten Zeitstempel. Wird nur während des ersten Aufrufs verwendet, um zu akkumulieren, wenn ein Wert für einen bestimmten Zeitstempel nicht verfügbar ist.

    Ein Anwendungsfall könnte das Sammeln einer Watt-Metrik für total_power sein. Sie möchten die Leistung eines Routers, der an eine Steckdose ohne Leistungsmesser angeschlossen ist, in Watt akkumulieren. Wenn Sie den Verbrauchswert kennen und dieser konstant ist, können Sie den konstanten Wert als Standardwert verwenden, um „total_power“ zu akkumulieren. Zum Beispiel würden Sie 20 verwenden, wenn der Router ständig angeschlossen ist und 20 Watt verbraucht.

    Datentyp: Zeichenfolge

    Standard: 0

    sysparm_ignore_unknown_series

    Kennzeichnung, die angibt, ob eine unbekannte Serie ignoriert und die Transaktion fortgesetzt werden soll, ohne einen Fehler zurückzugeben.

    Gültige Werte:
    • true: Unbekannte Serie ignorieren.
    • false: Unbekannte Reihen nicht ignorieren.

    Standardwert: true

    Tabelle : 15. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    SerienRef Liste der Zeichenfolgen, die die zu aktualisierenden Datenreiheninformationen darstellen.

    Datentyp: Array

    "seriesRef": [
      {
        "metric": "String",
        "subject": "String",
        "table": "String"
      }
    ]
    seriesRef.metric Erforderlich. Der Name der zu aktualisierenden akkumulierenden Metrik.

    Datentyp: Zeichenfolge

    seriesRef.subject Erforderlich. Die sys_id des Datensatzes, in dem die Daten aktualisiert werden sollen. Befindet sich in der in seriesRef.tableangegebenen Tabelle.

    Datentyp: Zeichenfolge

    seriesRef.table Erforderlich. Der Name der Tabelle, in der die Daten gespeichert werden sollen.

    Datentyp: Zeichenfolge

    Werte Erforderlich. Die Reihenwerte, die akkumuliert und gespeichert werden sollen. Werte mit demselben Zeitstempel werden mit dem Abfrageparameter default_value zusammengefasst.

    Datentyp: Array

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    werte.timestamp Erforderlich. Der ISO 8601-Zeitstempel des Werts.

    Datentyp: Zeichenfolge

    Format: JJJJ-MM-ttTHH:mm:ttZ

    Das durch „Z“ dargestellte Zeichen bezeichnet die UTC-Zeitzone in einem ISO-formatierten Zeitstempel. Dieser Teil des Zeitstempelformats ist optional.

    Beispiel: 2019-03-21T17:05:00Z

    values.value Erforderlich. Der Metrikwert.

    Datentyp: Zahl

    Header

    Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST-API verwendet werden, finden Sie unter Unterstützte REST-API-Header.

    Tabelle : 16. Anforderungskopfzeilen
    Kopfzeile Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützt nur application/json.
    Content-Type Datenformat des Anforderungstexts. Unterstützt nur application/json.
    Tabelle : 17. Antwortkopfzeilen
    Kopfzeile Beschreibung
    Keine

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST-API verwendet werden, finden Sie unter HTTP-Antwortcodesder REST-API.

    Tabelle : 18. Statuscodes
    Statuscode Beschreibung
    200 Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet.
    401 Nicht autorisiert. Die Anmeldeinformationen sind falsch oder wurden nicht übergeben.
    500 Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler.

    Antworttextparameter (JSON oder XML)

    Name Beschreibung
    Nachricht Meldung, die Erfolg (OK) oder Fehlerangibt.

    cURL-Anforderung

    Dieses Beispiel zeigt, wie Metrikwerte zu einem bestimmten Zeitstempel akkumuliert werden.

    curl "https://instance.servicenow.com/api/now/v1/clotho/accumulate" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
      \"seriesRef\": {
        \"subject\": \"3D666b051787333200a328c5b836cb0b92\",
        \"table\": \"power_monitoring\",
        \"metric\": \"total_power\"
      },
      \"values\": [
        {
          \"timestamp\": \"2019-03-21T17:05:00Z\",
          \"value\": 0.150185
        },
        {
          \"timestamp\": \"2019-03-21T17:05:00Z \",
          \"value\": 0.46074
        },
        {
          \"timestamp\": \"2019-03-21T17:05:00Z \",
          \"value\": 0.83104
        },
        {
          \"timestamp\": \"2019-03-21T17:05:00Z \",
          \"value\": 1.260635
        },
        {
          \"timestamp\": \"2019-03-21T17:05:00Z \",
          \"value\": 1.749
        }
      ]
    }" \
    --user "username":"password"

    Ausgabe mit erfolgreichen Ergebnissen bereitgestellt.

    {
        "result": {
            "message": "ok"
        }
    }

    MetricBase Time Series – POST /now/clotho/transform

    Ruft Zeitreihendaten für eine oder mehrere Metriken ab und gruppiert sie optional, nachdem eine angegebene Liste von Transformationen angewendet wurde, die eine lineare Pipeline bilden.

    URL-Format

    Versionierte URL: /api/now/{api_version}/clotho/transform

    Unterstützte Anforderungsparameter

    Tabelle : 19. Pfadparameter
    Name Beschreibung
    api_version Optional. Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden.

    Datentyp: Zeichenfolge

    Tabelle : 20. Abfrageparameter
    Name Beschreibung
    sysparm_display_value Kennzeichnung, die angibt, ob die Ergebnisdaten mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet werden sollen, wenn keine andere Bezeichnung angegeben ist.
    Gültige Werte:
    • true: Ergebnisdaten werden mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet.
    • false: Ergebnisdaten werden nicht mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet.

    Datentyp: Boolesch

    Standardwert: false

    Tabelle : 21. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    Ende Erforderlich. Endzeit des Auswertungszeitraums. Ein leerer oder fehlender Wert wird als aktuelle Uhrzeit behandelt.

    Datentyp: Zeichenfolge

    Format: ISO 8601 (UTC), entweder:
    • Absolutes Datumsformat [JJJJ-MM-TTThh:mm:ss], z. B. 2019-03-20T17:04:55.
    • Relativ zum aktuellen Zeitdauerformat [P(n)Y(n)M(n)DT(n)H(n)M(n)S], z. B. P1M.
    limit Maximale Anzahl der zurückzugebenden Datensätze. Ungewöhnlich große Werte können die Systemleistung beeinträchtigen.

    Datentyp: Zahl

    Standard: 10.000

    metrics Liste der Metrikobjekte, die in der Transformation verwendet werden sollen. Weitere Informationen zu Metriken finden Sie unter Metrics.

    Datentyp: Array

    "metrics": [
      {
        "groupBy": "String"
        "label": "String",
        "metric": "String",
        "transforms": [Array]
      }
    ]
    metrics.groupBy Kommagetrennte Liste von Feldern, die in der im Parameter table angegebenen Tabelle enthalten sind, nach der die Serie gruppiert werden soll, bevor zusammengefasste Transformationen erfasst oder angewendet werden.

    Die Reihenfolge der Elemente in der Liste entspricht der Reihenfolge, in der die Daten nach gruppiert werden. Wenn die Liste beispielsweise zwei Elemente enthält: „Bundesland, Postleitzahl“, wird die Serie zuerst nach Bundesland und dann nach Postleitzahl innerhalb des Bundeslandes gruppiert.

    Datentyp: Zeichenfolge

    Standard: Daten werden nicht gruppiert.

    metrics.label Bezeichnung, die für den Ergebnissatz dieser Metrik verwendet werden soll. Sie ersetzt alle von der Transformationskette generierten Bezeichnungen.

    Datentyp: Zeichenfolge

    Standard: Generierte Standardbezeichnung.

    metrics.metric Erforderlich, wenn Objekt metrics übergeben wird. In der Transformation zu verwendendes Metrikfeld. Dieses Feld muss sich in der im Parameter table angegebenen Tabelle befinden.

    Datentyp: Zeichenfolge

    metrics.transforms Liste der Transformationen (Transformationskette), die auf die abgerufenen Zeitreihendaten angewendet werden sollen. Jede Transformation baut auf den Ergebnissen der vorherigen Transformation auf. Eine Liste der verfügbaren Transformationen finden Sie unten unter „ Unterstützte Transformationen “.

    Datentyp: Array

    "transforms": [
      {
        "arg": {Object},
        "name": "String"
      }
    ]
    metrics.transforms.arg Abhängig von der Transformation. Parameter, die an die Transformation übergeben werden sollen.
    Allgemeine Richtlinien:
    • Verwenden Sie den Parameter arg nicht, wenn Sie Transformationen angeben, die keinen Parameter annehmen.
    • Verwenden Sie Number, String oder Boolean für Transformationen, die einen einzelnen Parameter übernehmen.
    • Verwenden Sie ein JSON-Objekt mit den entsprechenden Name-Wert-Paaren für Transformationen, die mehr als einen Parameter annehmen.

    Datentyp: Zahl, Zeichenfolge, Boolean oder JSON-Objekt, abhängig von der Transformation. (Eine Liste der verfügbaren Transformationen finden Sie in der Tabelle „ Unterstützte Transformationen “ unten.)

    metrics.transforms.name Erforderlich, wenn ein transforms -Objekt angegeben ist. Name der Transformation.

    Eine Liste der verfügbaren Transformationen finden Sie in der Tabelle „Unterstützte Transformationen “.

    Datentyp: Zeichenfolge

    query Codierte Abfrage, die zum Filtern der Ergebnismenge verwendet werden soll.

    Sie können die Abfrage mit dem Filter-Editor der angegebenen Tabelle erstellen. Wählen Sie nach der Erstellung im Breadcrumbs-Kontextmenü des Filters die Option URL kopieren aus.

    Datentyp: Zeichenfolge

    Standard: Keine

    Start Erforderlich. Startzeit des Auswertungszeitraums. Mit dem Sonderwert all kann die Startzeit als aktuelle Zeit abzüglich der maximalen Aufbewahrungsdauer für die angegebenen Metriken festgelegt werden. Ein leerer oder fehlender Wert wird als impliziter allbehandelt.

    Datentyp: Zeichenfolge

    Format: ISO 8601 (UTC), entweder:
    • Absolutes Datumsformat [JJJJ-MM-TTThh:mm:ss], z. B. 2019-03-20T17:04:55
    • Relativ zum aktuellen Zeitdauerformat [P(n)Y(n)M(n)DT(n)H(n)M(n)S], z. B. P1M.
    Tabelle Erforderlich. Name der Tabelle, die den dieser Serie zugeordneten GlideRecord enthält.

    Datentyp: Zeichenfolge

    Header

    Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST-API verwendet werden, finden Sie unter Unterstützte REST-API-Header.

    Tabelle : 22. Anforderungskopfzeilen
    Kopfzeile Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützt nur application/json.
    Content-Type Datenformat des Anforderungstexts. Unterstützt nur application/json.
    Tabelle : 23. Antwortkopfzeilen
    Kopfzeile Beschreibung
    Keine

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST-API verwendet werden, finden Sie unter HTTP-Antwortcodesder REST-API.

    Tabelle : 24. Statuscodes
    Statuscode Beschreibung
    200 Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet.
    400 Fehlerhafte Anforderung. Ein fehlerhafter Anforderungstyp oder eine falsch formatierte Anforderung wurde erkannt.
    401 Nicht autorisiert. Die Anmeldeinformationen sind falsch oder wurden nicht übergeben.
    404 Nicht gefunden. Das angeforderte Element wurde nicht gefunden.
    405 Ungültige Methode. Die Funktion ist deaktiviert.
    500 Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler.

    Antworttextparameter (JSON oder XML)

    Name Beschreibung
    Ergebnisse Null oder mehr Ergebnisobjekte, die die Abfrage erfüllen. Enthält entweder ein series -Array oder ein grouped -Array.

    Datentyp: Array

    "results":[
      {
        "grouped": [Array],
        "marker": "String",
        "series": [Array]
      }
    ]
    results.grouped Liste der gruppierten Ergebnisobjekte, bei denen jedes grouped Ergebnisobjekt einer bestimmten Gruppe entspricht. Dieses Format wird zurückgegeben, wenn der Parameter metrics.groupBy im Anforderungstext übergeben wird.

    Datentyp: Array

    "grouped": [
      {
        "groupingBy": "String",
        "groups": [Array]
      }
    ]
    ergebnisse.gruppiert.gruppierenNach Wert, der im Parameter metrics.groupBy in der Anforderung übergeben wird.

    Datentyp: Zeichenfolge

    ergebnisse.gruppiert.gruppen Liste der generierten Gruppen basierend auf dem Inhalt des Parameters metrics.groupBy in der Anforderung.

    Datentyp: Array

    "groups": [
      {
        "group": "String",
        "label": "String",
        "series": {Object}
      }
    ]
    ergebnisse.gruppiert.gruppen.gruppe Name der Gruppe.

    Datentyp: Zeichenfolge

    results.grouped.groups.label Bezeichnung der Gruppe.

    Datentyp: Zeichenfolge

    results.grouped.groups.series Transformierte Werte für das Ergebnis der Gruppe.

    Datentyp: Array

    "series": [
      {
        "label": "String",
        "seriesRef": {Object},
        "values": [Array]
      }
    ]
    results.grouped.groups.series.label Bezeichnung der Serie.

    Datentyp: Zeichenfolge

    results.grouped.groups.series.seriesRef Ergebnisse einer einzelnen Datenreihe. Wird nicht angezeigt, wenn die Antwort mehrere Datenreihen enthält.

    Datentyp: Objekt

    "seriesRef": {
      "metric": "String",
      "subject": "String",
      "table": "String"
    }
    results.grouped.groups.series.seriesRef.metric Name der Metrik, aus der die Datenreihe abgerufen wurde. Wird nur angezeigt, wenn das Objekt metrics in der Anforderung übergeben wird.

    Datentyp: Zeichenfolge

    results.grouped.groups.series.seriesRef.subject Sys_id des Datenreihen-Datensatzes. Befindet sich in der in results.series.seriesRef.tableangegebenen Tabelle.

    Datentyp: Zeichenfolge

    results.grouped.groups.series.seriesRef.table Name der Tabelle, aus der die Datenreihe abgerufen wurde.

    Datentyp: Zeichenfolge

    results.grouped.groups.series.values Liste der Ergebniswerte für die Gruppe.

    Datentyp: Array

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    results.grouped.groups.series.values.timestamp ISO 8601-Zeitstempel des Werts.

    Datentyp: Zeichenfolge

    results.grouped.groups.series.values.value Transformierter Wert.

    Datentyp: Zahl

    results.marker Eindeutiger Bezeichner für die entsprechenden Ergebnisse.

    Datentyp: Zeichenfolge

    results.series Liste der nicht gruppierten Reihen von Ergebnisobjekten.

    Datentyp: Array

    "series": [
      {
        "label": "String",
        "seriesRef": {Object},
        "values": [Array]
      }
    ]
    ergebnisse.serie.bezeichnung Datenreihenbezeichnung. Dieser Wert wird entweder vom Endpunkt generiert oder ist der im Parameter metrics.label übergebene Wert.

    Datentyp: Zeichenfolge

    ergebnisse.series.seriesRef Ergebnisse einer einzelnen Datenreihe. Wird nicht angezeigt, wenn die Antwort mehrere Datenreihen enthält.

    Datentyp: Objekt

    "seriesRef": {
      "metric": "String",
      "subject": "String",
      "table": "String"
    }
    ergebnisse.series.seriesRef.metric Name der Metrik, aus der die Datenreihe abgerufen wurde. Wird nur angezeigt, wenn das Objekt metrics in der Anforderung übergeben wird.

    Datentyp: Zeichenfolge

    results.series.seriesRef.subject Sys_id des Datenreihen-Datensatzes. Befindet sich in der in results.series.seriesRef.tableangegebenen Tabelle.

    Datentyp: Zeichenfolge

    results.series.seriesRef.table Name der Tabelle, aus der die Datenreihe abgerufen wurde.

    Datentyp: Zeichenfolge

    ergebnisse.serie.werte Transformierte Reihenwerte.

    Datentyp: Array

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    results.series.values.timestamp ISO 8601-Zeitstempel des Werts.

    Datentyp: Zeichenfolge

    results.series.values.value Transformierter Wert.

    Datentyp: Zahl

    Unterstützte Transformationen

    Tabelle : 25. Transformieren Sie Datentypen
    Umwandeln Beschreibung
    Hinzufügen Fügt jedem Zeitstempelwert die angegebene Zahl hinzu.

    Argument: arg (Dezimaldatentyp) – Zahl, die hinzugefügt werden soll.

    Beispiel:
    "transforms": [
      {
        "name": "add",
        "arg": 8
      }
    ]
    Autokorrelation Berechnet die Korrelation zwischen Zeitstempelwerten, die durch eine aufsteigende Anzahl von Punkten getrennt sind, beginnend bei 1.
    avg Fasst die Zeitreihe zu einer Reihe zusammen, die den Durchschnittswert für jeden entsprechenden Zeitstempel in der Eingabe enthält.
    bottom Gibt die angegebene Anzahl von Serien mit den niedrigsten Werten zurück.

    Argument: arg (Ganzzahl) – Die Anzahl der zurückzugebenden Reihen.

    Das Folgende gibt beispielsweise die beiden Zeitreihen zurück, die die niedrigsten Wertesätze enthalten.
    "transforms": [
      {
         "name": "bottom",
         "arg": 2
      }
    ]
    ceil Rundet den Wert in jedem Zeitstempel auf die angegebene Genauigkeit: ceil(value /<arg> ) * )

    Argument: arg (Datentyp „Dezimalzahl“) – Dezimalgenauigkeit, auf die aufgerundet werden soll.

    sammeln Zeigt die Transformationsergebnisse der Transformationskette bis zum Punkt des Erfassungstransformationsaufrufs an. Die Ergebnisse der Erfassungstransformation enthalten eine eindeutige Markierung, aber Sie möchten möglicherweise auch eine Bezeichnung definieren.
    Beispiel:
    {
      "start": "PT1H",
      "end": "",
      "table": "mb_demo_drone",
      "limit": 5000,
      "metrics": [
        {
          "metric": "mb_demo_mt_altitude",
          "transforms": [
            {
              "name": "label",
              "arg": "Series Timestamp Values"
            },
            {
              "name": "collect"
            },
            {
              "name": "avg"
            },
            {
              "name": "label",
              "arg": "Average Timestamp Values"
            }
          ]
        }
      ]
    }
    constrainValues Ersetzt einen Wert außerhalb des angegebenen Bereichs durch den entsprechenden Höchst- oder Mindestwert.
    Wenn Sie beispielsweise Folgendes angegeben haben, ersetzt die Transformation jeden Wert, der kleiner als 0 ist, durch 0 und jeden Wert, der größer als 100 ist, durch 100.
    "transforms": [
      {
        "name": "constrainValues",
        "val1": 0,
        "val2": 100
      }
    ]
    Parameter:
    • val1 (Datentyp „Dezimalzahl“): Mindest- oder Höchstwert.
    • val2 (Datentyp „Dezimalzahl“): Mindest- oder Höchstwert.
    count Fasst die Zeitreihe zu einer Reihe zusammen. Die neue Serie enthält die Anzahl der Werte, die nicht NaN (Not a Number) für jeden entsprechenden Zeitstempel in der Serie sind.
    Ableitung Bestimmt die Änderungsrate zwischen Zeitstempeln. Dividiert die Differenz zwischen dem Wert in jedem Zeitstempel und dem Wert im nächsten Zeitstempel durch den Zeitraum des Zeitstempels.
    Hinweis:
    Diese Transformation gibt einen Wert weniger zurück als die Anzahl der Werte in der Reihe.
    div Dividiert den Wert in jedem Zeitstempel durch die angegebene Zahl (arg).

    Argument: arg (Dezimalzahl – Die Zahl, durch die der Wert jedes Zeitstempels geteilt werden soll.

    Umschlag Gibt zwei Zeitreihen zurück, von denen zu jedem Zeitpunkt eine den größten Wert und die andere den kleinsten Wert enthält.
    Hinweis:
    NaNs werden ignoriert, aber zurückgegeben, wenn keine anderen Rückgabewerte vorhanden sind.
    ab Potenziert den Wert der angegebenen Basis mit dem Wert in jedem Zeitstempel.

    Argument: arg (Dezimaldatentyp) – Der Basiswert.

    filter Wendet einen Aggregator auf den Inhalt eines Schiebefensters an, z. B. zur Erstellung eines gleitenden Durchschnitts.
    Parameter:
    • aggregator (Aggregator-Datentyp): Typ der auszuführenden Zusammenfassung.
    • window (Datentyp „Dauer“): Die Dauer des Schiebefensters.
    Stockwerk Rundet den Wert in jedem Zeitstempel auf die angegebene Genauigkeit ab: Floor(Wert /<arg> ) *

    Argument: arg (Dezimaldatentyp) – Die Dezimalgenauigkeit, auf die abgerundet werden soll.

    Fraktile Gibt eine Zeitreihe für jeden Bruch im angegebenen Array zurück. Jeder Zeitstempelwert ist der Wert, bei dem der angegebene Bruchteil von Werten für den entsprechenden Zeitstempel in der Eingabeserie unter dem angegebenen Prozentsatz liegt. Wenn der Bruch beispielsweise 0,5 ist, ist der Wert im Zeitstempel der Wert, bei dem die Hälfte der Werte in der Eingabereihe unter 0,5 liegt.

    Argument: arg (Array of Decimal) – Die für die Eingabeserie zu verwendenden Brüche.

    Beispiel:
    "transforms": [
      {
        "name": "fractiles",
        "arg": [0.25, 0.5, 0.75, 1]
      }
    ]
    groupBy Gruppiert Daten nach den angegebenen Feldern, bevor zusammengefasste Transformationen erfasst oder angewendet werden.

    Argument: arg (Zeichenfolge) – Eine durch Kommas getrennte Liste von Feldern in der Tabelle, die zum Gruppieren der Transformationsergebnisse verwendet werden sollen.

    Beispiel:
     "transforms": [
      {
        "name": "groupBy",
        "arg": "model"
      },
      {
        "name": "avg"
      },
      {
        "name": "label",
        "arg": "Model: %g"
      }
    ]
    integrieren Multipliziert den Wert in jedem Zeitstempel mit seinem Zeitraum.
    interpolieren Erstellt einen Datenwert für ein NaN-Datenelement durch Interpolation aus benachbarten Datenwerten.

    Argument: arg (Ganzzahl) – Anzahl der Datenbeispiele in jede Richtung, die auf einen Nicht-NaN-Wert überprüft werden soll. Wenn kein Nicht-NaN-Wert gefunden wird, wird NaN verwendet.

    invers Berechnet den Kehrwert jedes Zeitstempelwerts.
    iqr Führt eine Interquartilbereichstransformation durch und erstellt einen Ergebnissatz, der vier Reihen enthält:
    1. -IQR: Der Median aller Einträge unter Q1 - (1,5 * IQR).
    2. F1: Der Median der kleinsten Hälfte der Einträge.
    3. F3: Der Median der größten Hälfte der Einträge.
    4. +IQR: Median aller Einträge über Q3 + (1,5 * IQR).
    Hinweis:
    IQR = Q3 - Q1
    label Beschriftet eine Transformationskette.
    Hinweis:
    Nachfolgende Transformationen können die Bezeichnung ändern oder ersetzen.
    Argument: arg (Zeichenfolge) – Text der Bezeichnung. Kann die folgenden Formatierungsausdrücke enthalten:
    • %%: Escape-Zeichen für ein „%“-Literal.
    • %l: Aktuelle Bezeichnung, die ersetzt wird.
    • %s: Serienbetreff.
    • %g: Wert des Gruppieren-nach-Felds. Wenn es sich um einen referenzierten Datensatz handelt, dann der Wert des Namensfelds des Datensatzes. Wenn in der Transformation groupBy mehrere Gruppen angegeben sind, werden die Bezeichnungen durch Kommas getrennt.
    • %G: Wert des Gruppieren-nach-Felds. Wenn es sich um einen referenzierten Datensatz handelt, die sys_id des Datensatzes. Wenn mehrere Gruppen ausgewählt sind, werden die Werte durch Kommas getrennt.
    Beispiel:
    "transforms": [
      {
        "name": "label",
        "arg": "Series Timestamp Values"
      },
    ]
    "transforms": [
      {
        "name": "groupBy",
        "arg": "model"
      },
      {
        "name": "avg"
      },
      {
        "name": "label",
        "arg": "Model: %g"
      }
    ]
    limit Gibt höchstens die angegebene Dauer oder Anzahl von Werten zurück, beginnend mit dem zuletzt gespeicherten Wert.
    Parameter:
    • arg (Integer): Anzahl der Zeitstempelwerte, die für jede Zeitreihe zurückgegeben werden sollen.

      ODER

    • arg (Datentyp „Dauer“): Dauer, auf die jede Zeitreihe beschränkt werden soll.
    Protokoll Führt einen Logarithmus für den Wert in jedem Zeitstempel aus, wobei das Ergebnis das Protokoll der angegebenen Basis für den Zeitstempelwert ist.

    Argument: arg (Dezimaldatentyp) – Basis für die Berechnung des Logarithmus.

    mapValues Ersetzt alle Werte innerhalb des angegebenen Bereichs (einschließlich) durch den angegebenen Wert. Wenn sowohl lowerBound als auch upperBound als NaN angegeben sind, wird ein beliebiger NaN-Wert durch targetValueersetzt.
    Parameter:
    • untereGrenze (Datentyp „Dezimalzahl“): Der niedrigste Wert im Bereich.
    • obereGrenze (Datentyp „Dezimalzahl“): Der höchste Wert im Bereich.
    • targetValue (Datentyp „Dezimalzahl“): Ersatzwert.
    Folgendes ändert beispielsweise alle Werte in der Zeitreihe, die zwischen 0,1 und 0,9 liegen, in 1:
    "transforms": [
      {
        "name": "mapValues",
        "lowerBound": .1,
        "upperBound": .9,
        "targetValue": 1
      }
    ]
    max. Gibt eine Reihe zurück, die den maximalen Wert für jeden entsprechenden Zeitstempel in der Eingabe enthält.
    Median Erstellt eine Reihe, die den Median der Werte für jeden Zeitstempel in einem Satz von Reihen enthält.
    Wenn es n Serien gibt:
    • Wenn n ungerad ist, ist der Median der Wert (n / 2 + 1) für einen Zeitstempel.
    • Wenn n gerade ist, ist der Median der Durchschnitt der Werte (n / 2) und (n / 2 + 1) für einen Zeitstempel.
    min Gibt eine Reihe zurück, die den Mindestwert für jeden entsprechenden Zeitstempel in der Eingabe enthält.
    mul Multipliziert den Wert in jedem Zeitstempel mit der angegebenen Zahl.

    Argument: arg (Dezimaldatentyp) – Zahl, mit der der Wert jedes Zeitstempels multipliziert werden soll.

    partition

    Erzeugt eine neue Reihe mit Werten, die gefiltert werden, indem ein angegebener Aggregator auf ein nicht überlappendes Fenster angewendet wird.

    Parameter:
    • aggregator (Aggregator-Datentyp): Typ der auszuführenden Zusammenfassung.
    • window (Datentyp „Dauer“): Die Dauer des nicht überlappenden Fensters zum Anwenden des Aggregators.
    • Basis (DateTime-Datentyp): Die für die Partitionierung zu verwendende Nullpunktverschiebung. Um beispielsweise nach Tag (24 Stunden) zu partitionieren, setzen Sie diesen Wert auf Montag um Mitternacht in Ihrer Zeitzone. Um nach einem Zeitraum von 30 Tagen zu partitionieren, legen Sie diesen Wert auf den ersten Tag des letzten Monats fest.

      Standard: Beginn der EPOCHE.

    pow Erhöht jeden Zeitstempelwert um die angegebene Potenz.

    Argument: arg (Dezimaldatentyp) – Potenz, um die jeder Wert erhöht werden soll.

    Produkt Fasst die ausgewählten Metrikserien zu einer einzelnen Serie zusammen, die das Produkt aller Werte für jeden Zeitstempel enthält. NaNs sind ausgeschlossen. Wenn alle Zahlen in der Reihe NaN sind, ist die Ausgabe auch NaN.
    erneut berechnen Berechnet eine Zeitreihe entweder auf eine feste Anzahl von Punkten oder von einer Häufigkeit zur anderen.

    Verwenden Sie die Resample-Transformation, um die Anzahl der Beispiele im Ergebnissatz so zu reduzieren, dass sie der Anzahl der Beispiele entspricht, die Sie anzeigen möchten.

    Argumente: Sie können verschiedene Argumente für diese Transformation übergeben. Nachfolgend finden Sie eine Liste aller möglichen Argumentgruppen. Nur eine dieser Argumentgruppen kann innerhalb einer einzelnen Transformation übergeben werden. Die folgenden Argumentgruppen werden durch UND/ODER beschrieben. UND bedeutet, dass das Argument Teil der aktuellen Gruppe ist; OR bedeutet, dass es sich um den Beginn einer neuen Argumentgruppe handelt.
    • arg (Integer): Anzahl der Beispiele, die in den Ergebnissatz aufgenommen werden sollen. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie durch Durchschnittsbildung reduziert.

      ODER

    • arg (Datentyp „Dauer“): Die Häufigkeit, mit der ein erneutes Abtasten durchgeführt werden soll. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie durch Durchschnittsbildung reduziert.

      ODER

    • minValues (Integer): Die Mindestanzahl von Beispielen, die in den Ergebnissatz aufgenommen werden sollen. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen.

      UND

    • maxValues (Integer): Die maximale Anzahl von Beispielen, die in den Ergebnissatz aufgenommen werden sollen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie durch Durchschnittsbildung reduziert.

      ODER

    • aggregator (Datentyp „Aggregator“): Der Aggregator, der beim Resampling verwendet werden soll.

      UND

    • values (Integer): Die Anzahl der Beispiele, die in den Ergebnissatz aufgenommen werden sollen. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie reduziert, indem der angegebene aggregator auf sie angewendet wird.

      ODER

    • aggregator (Datentyp „Aggregator“): Der Aggregator, der beim Resampling verwendet werden soll.

      UND

    • Zeitraum (Datentyp „Dauer“): Die Häufigkeit, mit der ein erneutes Abtasten durchgeführt werden soll. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie reduziert, indem der angegebene aggregator auf sie angewendet wird.

      ODER

    • aggregator (Datentyp „Aggregator“): Der Aggregator, der beim Resampling verwendet werden soll.

      UND

    • minValues (Integer): Die Mindestanzahl von Beispielen, die in den Ergebnissatz aufgenommen werden sollen. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen.

      UND

    • maxValues (Integer): Die maximale Anzahl von Beispielen, die in den Ergebnissatz aufgenommen werden sollen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie durch Durchschnittsbildung reduziert.
    Runden Rundet den Wert in jedem Zeitstempel auf die angegebene Genauigkeit: (Wert /<arg> ) *

    Argument: arg (Dezimaldatentyp) – Die Dezimalgenauigkeit, auf die aufgerundet werden soll.

    Stamm Berechnet den Stamm jedes Zeitstempelwerts anhand des angegebenen Index.

    Argument: arg (Dezimaldatentyp) – Der Index des Stamms.

    Folgendes gibt beispielsweise die Quadratwurzel jedes Zeitstempels zurück:
    "transforms": [
      {
        "name": "root",
        "arg": "2"
      },
    ]
    stddev Erstellt eine Reihe, die die Standardabweichung von Werten für jeden Zeitstempel in einem Satz von Reihen enthält.
    Sub Subtrahiert die angegebene Zahl vom Wert in jedem Zeitstempel.

    Argument: arg (Number) – Die Zahl, die vom Wert in jedem Zeitstempel abgezogen werden soll.

    sum Fasst die ausgewählten Metrikserien zu einer Serie zusammen, die die Summe aller Werte für jeden Zeitstempel enthält, ausschließlich NaNs. Wenn alle Zahlen in der Reihe NaN sind, ist die Ausgabe NaN.
    Zeitverschiebung Verschiebt den Zeitbereich, indem der angegebene Offset zum Zeitstempel eines Werts hinzugefügt wird, ohne den Wert zu ändern. Verwenden Sie diese Transformation, um Zeitstempel in eine andere Zeitzone zu verschieben.

    Argument: arg (Datentyp „Dauer“) – Die Zeit, um die verschoben werden soll.

    top Gibt die angegebene Anzahl von Serien mit den höchsten Werten zurück.

    Argument: arg (Ganzzahl) – Die Anzahl der zurückzugebenden Reihen.

    Das Folgende gibt beispielsweise die beiden Zeitreihen zurück, die die höchsten Wertesätze enthalten.
    "transforms": [
      {
         "name": "top",
         "arg": 2
      }
    ]
    Datentyp Beschreibung
    Aggregator Verfügbare Aggregatoren zur Verwendung innerhalb der Transformation.
    • Durchschnitt: Berechnet das arithmetische Mittel aller aktuell ausgewählten Reihen.
    • CHISQUARE: Zeigt an, wie gut ein statistisches Modell zum Metrikdatensatz passt.
    • LAST: Gibt den letzten definierten Wert im Zeitraumfenster zurück.
    • MAX: Zeigt den größten Wert für den Metrik-Datensatz zu jedem Zeitpunkt an.
    • Median: Zeigt den Median des Metrik-Datensatzes an. Der Median trennt die höheren Werte des Metrik-Datensatzes von den niedrigeren Werten.
    • MIN: Zeigt den kleinsten Wert für den Metrik-Datensatz zu jedem Zeitpunkt an.
    • STDDEV: Berechnet die Standardabweichung über die zugrunde liegenden Daten. Wird verwendet, um die Variation oder Streuung einer Menge von Datenwerten im Metrik-Datensatz zu quantifizieren.
    • SUM: Berechnet die Summe für alle aktuell ausgewählten Serien.
    DateTime Absolute Datums-/Uhrzeitwerte werden im ISO 8601-Datums- und Uhrzeitformat angegeben: JJJJ-MM-TTThh:mm:ss. Beispiel: 2020-02-28T13:10:42.

    Wobei:

    • [JJJJ]: Vierstellige Jahresangabe.
    • [MM]: Mit Nullen gefüllter Monat zwischen 01 und 12.
    • [TT]: Mit Nullen aufgefüllter Tag zwischen 01 und 31.
    • T: Stellt die Zeit dar und ist obligatorisch, bevor eine der Zeitkomponenten angegeben wird.
    • [hh]: Mit Nullen aufgefüllte Stunde zwischen 00 und 23.
    • [mm]: Mit Nullen aufgefüllte Minuten zwischen 00 und 59.
    • [ss]: Mit Nullen aufgefüllte Sekunden zwischen 00 und 59. Beachten Sie, dass die Schaltsekunden gleichmäßig über die letzten 1.000 Sekunden verteilt sind.

    Relative Datums-/Uhrzeitwerte werden mithilfe einer Dauer (Datentyp „Dauer“) angegeben, die von der aktuellen Uhrzeit subtrahiert wird.

    Beispiel: P7T = vor sieben Tagen.

    Dezimalzahl Dezimalwert, der wie folgt lauten kann:
    • Eine vorzeichenbehaftete Dezimalzahl mit beliebiger Genauigkeit, die die Exponentialschreibweise verwenden kann.

      Zum Beispiel:

      • 2
      • 1.7
      • -3,47
      • 1.0E+2
    • Eine Zeichenfolgendarstellung von:
      • Eine Dezimalzahl mit Vorzeichen, die Exponentialschreibweise verwenden kann und garantiert eine 64-Bit-IEEE 754-Gleitkommazahl mit doppelter Genauigkeit ist.
      • „NaN“
      • „-Infinity“
      • „+Unendlich“
    Dauer Zeit in einem Zeitintervall. Dauerwerte werden im ISO 8601-Dauerformat angegeben: P[n]Y[n]M[n]DT[n]H[n]M[n]S
    Wobei:
    • P: Dauerbezeichner, der als „Zeitraum“ bezeichnet wird und immer am Anfang der Dauer platziert wird.
    • [n]Y: Anzahl der Jahre.
    • [n]M: Anzahl der Monate.
    • [n]T: Anzahl der Tage.
    • T: Zeitbezeichner; ist obligatorisch, bevor eine der Zeitkomponenten angegeben wird.
    • [n]H: Anzahl der Stunden.
    • [n]M: Anzahl der Minuten.
    • [n]S: Anzahl der Sekunden.
    Beispiel:
    • P7D: Zeitraum von sieben Tagen.
    • P1M: Zeitraum von einem Monat.
    • PT15M: Zeitraum von 15 Minuten.
    • P1DT12H: Zeitraum von einem Tag und zwölf Stunden.

    cURL-Anforderung

    curl "https://instance.servicenow.com/api/now/v1/clotho/transform \
    --request POST \
    --header "Accept:application/json", "Content-Type:application/json" \
    --user "username":"password"
    -d {\
      "start": "PT15M",\
      "end": "",\
      "table": "mb_demo_drone",\
      "query": "fleet.nameSTARTSWITHB",\
      "limit": 5000,\
      "metrics": [\
        {\
          "metric": "mb_demo_mt_altitude",\
          "label": "Series - Avg",\
          "transforms": [\
            {\
              "name": "partition",\
              "arg": {\
                "aggregator": "AVG",\
                "window": "PT5M"\
              }\
            },
            {\
              "name": "avg"\
            }\
          ]\
        },
        {\
          "metric": "mb_demo_mt_altitude",\
          "groupBy": "fleet",\
          "label": "Fleet - AVG",\
          "transforms": [\
            {\
              "name": "partition",\
              "arg": {\
                "aggregator": "AVG",\
                "window": "PT5M"\
              }\
            },
            {\
              "name": "avg"\
            }\
          ]\
        }\
      ]\
    } \

    Ausgabe:

    "results:" [
      {
        "marker": "674d86ba-a810-4065-942b-0b7ca2f95db2",
        "series": [
          {
            "label": "Series - Avg",
            "values": [
              {
                "timestamp": "2020-05-01T21:05:00Z",
                "value": 157.43086
              },
              {
                "timestamp": "2020-05-01T21:10:00Z",
                "value": 162.92278
              }
            ]
          }
        ]
      },
      {
        "marker": "846aa334-232a-4015-b033-d18ebc4b1d23",
        "grouped": [
          {
            "groupingBy": "fleet",
            "groups": [
              {
                "group": "86fac11787333200a328c5b836cb0b4e",
                "label": "Bantams",
                "series": {
                  "label": "Fleet - AVG",
                  "values": [
                    {
                      "timestamp": "2020-05-01T21:05:00Z",
                      "value": 159.70201
                    },
                    {
                      "timestamp": "2020-05-01T21:10:00Z",
                      "value": 165.1136
                    }
                  ]
                }
              },
              {
                "group": "4afac11787333200a328c5b836cb0b4e",
                "label": "Bumble Untd",
                "series": {
                  "label": "Fleet - AVG",
                  "values": [
                    {
                      "timestamp": "2020-05-01T21:05:00Z",
                      "value": 154.5403
                    },
                    {
                      "timestamp": "2020-05-01T21:10:00Z",
                      "value": 160.13445
                    }
                  ]
                }
              }
            ]
          }
        ]
      }
    ]

    MetricBase Time Series – POST /now/clotho/transform/stream

    Gibt einen Stream transformierter Zeitreihendaten für eine oder mehrere Metriken zurück, nachdem die angegebene Liste der Transformationen angewendet wurde.

    Wenn Sie Daten auf diese Weise streamen, können Sie die Daten verarbeiten, wenn einzelne Transformationen abgeschlossen und zurückgegeben werden, anstatt darauf zu warten, dass alle Transformationsergebnisse abgeschlossen und heruntergeladen werden. Wenn große Datenmengen vom Client verarbeitet werden müssen, reduziert diese Art der Verarbeitung die End-to-End-Verarbeitungszeit und reduziert möglicherweise die Speichernutzung auf dem Client.

    Durch Festlegen des entsprechenden Header-Werts „Accept“ in Ihrer Anforderung können Sie:
    • Geben Sie die gestreamten Daten an, die in einem binären Format codiert werden sollen.
    • Serialisieren Sie gestreamte Daten in ein JSON-Array oder
    • Streamen Sie Daten in einem breiten oder schmalen CSV-Format an den Client zurück.
    Der Endpunkt streamt die Daten, wenn Transformationen auf dem Server MetricBase abgeschlossen werden, ohne Gruppierungen oder eine vorgegebene Reihenfolge. Daten, die im Binärformat gestreamt werden, sind kleiner als die vom Endpunkt MetricBase Time Series – POST /now/clotho/transform zurückgegebene JSON-Darstellung.

    URL-Format

    Versionierte URL: /api/now/{api_version}/clotho/transform/stream

    Unterstützte Anforderungsparameter

    Tabelle : 26. Pfadparameter
    Name Beschreibung
    api_version Optional. Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden.

    Datentyp: Zeichenfolge

    Tabelle : 27. Abfrageparameter
    Name Beschreibung
    sysparm_display_value Kennzeichnung, die angibt, ob die Ergebnisdaten mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet werden sollen, wenn keine andere Bezeichnung angegeben ist.
    Gültige Werte:
    • true: Ergebnisdaten werden mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet.
    • false: Ergebnisdaten werden nicht mit dem Anzeigewert des Betreffdatensatzes gekennzeichnet.

    Datentyp: Boolesch

    Standardwert: false

    Tabelle : 28. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    Ende Erforderlich. Endzeit des Auswertungszeitraums. Ein leerer oder fehlender Wert wird als aktuelle Uhrzeit behandelt.

    Datentyp: Zeichenfolge

    Format: ISO 8601 (UTC), entweder:
    • Absolutes Datumsformat [JJJJ-MM-TTThh:mm:ss], z. B. 2019-03-20T17:04:55.
    • Relativ zum aktuellen Zeitdauerformat [P(n)Y(n)M(n)DT(n)H(n)M(n)S], z. B. P1M.
    limit Maximale Anzahl der zurückzugebenden Datensätze. Ungewöhnlich große Werte können die Systemleistung beeinträchtigen.

    Datentyp: Zahl

    Standard: 10.000

    metrics Liste der Metrikobjekte, die in der Transformation verwendet werden sollen. Weitere Informationen zu Metriken finden Sie unter Metriken.

    Datentyp: Array

    "metrics": [
      {
        "label": "String",
        "metric": "String",
        "transforms": [Array]
      }
    ]
    metrics.label Bezeichnung, die für den Ergebnissatz dieser Metrik verwendet werden soll. Sie ersetzt alle von der Transformationskette generierten Bezeichnungen.

    Datentyp: Zeichenfolge

    Standard: Generierte Standardbezeichnung.

    metrics.metric Erforderlich, wenn Objekt metrics übergeben wird. In der Transformation zu verwendendes Metrikfeld. Dieses Feld muss sich in der im Parameter table angegebenen Tabelle befinden.

    Datentyp: Zeichenfolge

    metrics.transforms Liste der Transformationen (Transformationskette), die auf die abgerufenen Zeitreihendaten angewendet werden sollen. Jede Transformation baut auf den Ergebnissen der vorherigen Transformation auf. Eine Liste der verfügbaren Transformationen finden Sie unten unter „ Unterstützte Transformationen “.

    Datentyp: Array

    "transforms": [
      {
        "arg": {Object},
        "name": "String"
      }
    ]
    metrics.transforms.arg Abhängig von der Transformation. Parameter, die an die Transformation übergeben werden sollen.
    Allgemeine Richtlinien:
    • Verwenden Sie den Parameter arg nicht, wenn Sie Transformationen angeben, die keinen Parameter annehmen.
    • Verwenden Sie Number, String oder Boolean für Transformationen, die einen einzelnen Parameter übernehmen.
    • Verwenden Sie ein JSON-Objekt mit den entsprechenden Name-Wert-Paaren für Transformationen, die mehr als einen Parameter annehmen.

    Datentyp: Zahl, Zeichenfolge, Boolean oder JSON-Objekt, abhängig von der Transformation. (Eine Liste der verfügbaren Transformationen finden Sie in der Tabelle „ Unterstützte Transformationen “ unten.)

    metrics.transforms.name Erforderlich, wenn ein transforms -Objekt angegeben ist. Name der Transformation.

    Eine Liste der verfügbaren Transformationen finden Sie in der Tabelle „Unterstützte Transformationen “.

    Datentyp: Zeichenfolge

    query Codierte Abfrage, die zum Filtern der Ergebnismenge verwendet werden soll.

    Sie können die Abfrage mit dem Filter-Editor der angegebenen Tabelle erstellen. Wählen Sie nach der Erstellung im Breadcrumbs-Kontextmenü des Filters die Option URL kopieren aus.

    Datentyp: Zeichenfolge

    Standard: Keine

    Start Erforderlich. Startzeit des Auswertungszeitraums. Mit dem Sonderwert all kann die Startzeit als aktuelle Zeit abzüglich der maximalen Aufbewahrungsdauer für die angegebenen Metriken festgelegt werden. Ein leerer oder fehlender Wert wird als impliziter allbehandelt.

    Datentyp: Zeichenfolge

    Format: ISO 8601 (UTC), entweder:
    • Absolutes Datumsformat [JJJJ-MM-TTThh:mm:ss], z. B. 2019-03-20T17:04:55
    • Relativ zum aktuellen Zeitdauerformat [P(n)Y(n)M(n)DT(n)H(n)M(n)S], z. B. P1M.
    Tabelle Erforderlich. Name der Tabelle, die den dieser Serie zugeordneten GlideRecord enthält.

    Datentyp: Zeichenfolge

    Header

    Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST-API verwendet werden, finden Sie unter Unterstützte REST-API-Header.

    Tabelle : 29. Anforderungskopfzeilen
    Kopfzeile Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützt Folgendes:
    • application/json
    • application/octet-stream oder
    • text/csv
    Um das CSV-Format anzugeben, verwenden Sie text/csv;format=nallow oder text/csv;format=width.
    Content-Type Datenformat des Anforderungstexts. Unterstützt nur application/json.
    Tabelle : 30. Antwortkopfzeilen
    Kopfzeile Beschreibung
    Keine Datenformat des Antworttexts. Verwenden Sie basierend auf den angegebenen Akzeptanzwerten der Anforderung Folgendes:
    • application/json
    • application/octet-stream oder
    • text/csv

    Wenn mehrere akzeptierte Typen angegeben sind, wird der erste unterstützte Typ zurückgegeben.

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST-API verwendet werden, finden Sie unter HTTP-Antwortcodesder REST-API.

    Tabelle : 31. Statuscodes
    Statuscode Beschreibung
    200 Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet, und das Datenstreaming beginnt.
    Hinweis:
    Eine 200-Antwort kann während der Berechnung der Transformationen immer noch einen Verarbeitungsfehler verursachen.
    400 Fehlerhafte Anforderung. Ein fehlerhafter Anforderungstyp oder eine falsch formatierte Anforderung wurde erkannt.
    401 Nicht autorisiert. Die Anmeldeinformationen sind falsch oder wurden nicht übergeben.
    404 Nicht gefunden. Das angeforderte Element wurde nicht gefunden.
    405 Ungültige Methode. Die Funktion ist deaktiviert.
    500 Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler.

    Parameter des Antworttexts (Octet-Stream oder JSON)

    Name Beschreibung
    Ausgabe-Stream (Octet-Stream) Wenn die Anforderungskopfzeile „Accept“ auf application/octet-streamfestgelegt ist, werden die übereinstimmenden MetricBase-Daten als binärer serialisierter Stream zurückgegeben. Die Anwendungen Clotho-Util für Java stellen einen Deserialisierer bereit, mit dem Sie diese Daten analysieren können.

    Der Stream besteht aus einer binären Serialisierung jedes Datums, der eine Ganzzahl vorangestellt ist, die seine Länge darstellt. Die folgenden Einträge beschreiben die Daten innerhalb der binären Darstellung und die Reihenfolge dieser Daten.

    CSV-Stream (UTF-8-Stream) Wenn der Accept-Anforderungsheader auf text/csvfestgelegt ist, werden die übereinstimmenden MetricBase-Daten als UTF-8-codierte CSV-Daten im breiten oder schmalen Format zurückgegeben.

    Ein schmales Format gibt Betreff- und Zeitstempelspalten und eine Spalte für jede zurückgegebene Metrik zurück. Ein breites Format gibt eine Zeitstempelspalte mit einer separaten Spalte für jedes Metrik-Antragsteller-Paar zurück.

    Betreff Quelle der Daten. Beispiel: Wenn die Metrik für die Daten die Höhen der Luftdrohnen sind, kann dieser Wert die ID einer bestimmten Drohne sein. Wenn der Wert einen Doppelpunkt enthält, stellen die Teile nach dem Betreff die Metrik dar, zu der die Daten gehören. Nullwerte werden durch eine codierte leere Zeichenfolge dargestellt.

    Größe: 2+ Byte

    Datentyp: Java − Geänderte UTF-Zeichenfolge

    Maß Metrik, aus der die Daten stammen. Nullwerte werden durch eine codierte leere Zeichenfolge dargestellt.

    Größe: 2+ Byte

    Datentyp: Java − Geänderte UTF-Zeichenfolge

    Bezeichnung Bezeichnung der Daten. Nullwerte werden durch eine codierte leere Zeichenfolge dargestellt.

    Größe: 2+ Byte

    Datentyp: Java − Geänderte UTF-Zeichenfolge

    Typ Typ der in einem Byte codierten Daten.

    Mögliche Werte:

    • Gleitkomma-Signal
    • Doppeltes Signal
    • Schwebemodus
    • Doppeltes Modell

    Größe: 1 Byte

    Datentyp: Byte

    Kennzeichnungen Codierte Variable serializeFlags. Wenn serializeTags „ true“ ist und die Daten Tags enthalten, ist der Wert 2, andernfalls ist er 0.

    Größe: 1 Byte

    Datentyp: Byte

    Zeitraum Zeitraum, der den Daten zugeordnet ist.

    Größe: 4 Byte

    Datentyp: Ganzzahl

    Anzahl der Tags Wenn serializeTags „ true“ ist, ist dies die Anzahl der in den Daten gespeicherten Tags.

    Größe: 4 Byte

    Datentyp: Ganzzahl

    Tags Wenn serializeTags auf „true“ festgelegt ist, wird jedes Tag in den Daten gespeichert.

    Größe: Hängt von der Anzahl der Tags ab (2+ Byte).

    Datentyp: Java-modifizierte UTF-Zeichenfolgen

    Starte Epoche Sekunde Epochen-UTC-Zeit, die die Startzeit dieser Datenreihe darstellt.

    Größe: 8 Byte

    Datentyp: Lang

    Anzahl der Werte Anzahl der in diesen Daten gespeicherten Werte.

    Größe: 4 Byte

    Datentyp: Ganzzahl

    Werte Wenn Type das Gleitkomma-Signalist, besteht der Rest aus Gleitkomma-Werten.

    Größe: Number of Values * 4

    Datentyp: Gleitkommazahlen

    Werte Wenn Type das doppelte Signalist, besteht der Rest aus doppelten Werten.

    Größe: Number of Values * 4 Byte

    Datentyp: Doppelte

    Modell-JSON (Modell) Wenn Type ein Float-Modell oder ein Double-Modellist, ist der Rest eine in Java geänderte UTF-Zeichenfolge, die das Modell als JSON darstellt.

    Größe: 2+ Byte

    Datentyp: JSON (Java modifizierte UTF-Zeichenfolge)

    Marker für großes Modell (großes Modell) Wenn die Länge des JSON-Objekts des Modells größer als 65.535 Byte ist, wird dieses Feld anstelle von Model Jsongeschrieben.

    Größe: 5

    Datentyp: Java − Geänderte UTF-Zeichenfolge

    Größe des großen Modells (großes Modell) Länge der JSON-Darstellung des großen Modells.

    Größe: 4 Byte

    Datentyp: Ganzzahl

    JSON für großes Modell (großes Modell) JSON-Darstellung des Modells als Reihe von UTF-Zeichen. Die Größe wird durch das Feld Big Model Size bestimmt.

    Größe: 65535-256000 Byte

    Datentyp: UTF-Zeichen

    JSON-Stream (JSON) Wenn die Anforderungskopfzeile „Accept“ auf application/jsonfestgelegt ist, werden die übereinstimmenden MetricBase-Daten als Stream von durch neue Zeilen getrennten JSON-Objekten zurückgegeben. Die folgenden Einträge beschreiben die möglichen Elemente in jedem zurückgegebenen Objekt.
    label Bezeichnung der Daten. Dieser Wert wird entweder vom Endpunkt generiert oder ist der im Parameter metrics.label übergebene Wert.

    Datentyp: Zeichenfolge

    Zeitraum Zeitspanne zwischen jedem Wert. Zum Beispiel würde ein Zeitraum von 60 bedeuten, dass jeder Wert eine Minute voneinander entfernt ist.

    Einheit: Sekunden

    Datentyp: Zahl

    range Start- und Endzeit der Daten im ISO 8601-Format (UTC).

    Datentyp: Array

    Serie Identifiziert die einzelnen Daten. Wenn vorhanden, hat er normalerweise das Format [glide record id]:[metric]. Dies ist möglicherweise nicht vorhanden, wenn Transformationen verwendet werden.

    Datentyp: Zeichenfolge

    Arten Typ der Rückgabedaten. Für eine Reihe von Gleitkomma- oder Doppelwerten ist dies entweder FLOAT_SIGNAL oder DOUBLE_SIGNAL. Für ein Modell, das Float- oder Double-Daten analysieren soll, ist dies entweder FLOAT_MODEL oder DOUBLE_MODEL.

    Datentyp: Zeichenfolge

    tags Tags, die den Daten zugeordnet sind.

    Datentyp: Array von Zeichenfolge

    Wert Gleitkomma- oder Double-Werte für die Daten.

    Datentyp: Array von Zahlen

    Fehler Fehlermeldung, wenn die Transformation der angegebenen Datenreihe fehlschlägt.

    Datentyp: Zeichenfolge

    Unterstützte Transformationen

    Tabelle : 32. Transformieren Sie Datentypen
    Umwandeln Beschreibung
    Hinzufügen Fügt jedem Zeitstempelwert die angegebene Zahl hinzu.

    Argument: arg (Dezimaldatentyp) – Zahl, die hinzugefügt werden soll.

    Beispiel:
    "transforms": [
      {
        "name": "add",
        "arg": 8
      }
    ]
    Autokorrelation Berechnet die Korrelation zwischen Zeitstempelwerten, die durch eine aufsteigende Anzahl von Punkten getrennt sind, beginnend bei 1.
    avg Fasst die Zeitreihe zu einer Reihe zusammen, die den Durchschnittswert für jeden entsprechenden Zeitstempel in der Eingabe enthält.
    bottom Gibt die angegebene Anzahl von Serien mit den niedrigsten Werten zurück.

    Argument: arg (Ganzzahl) – Die Anzahl der zurückzugebenden Reihen.

    Das Folgende gibt beispielsweise die beiden Zeitreihen zurück, die die niedrigsten Wertesätze enthalten.
    "transforms": [
      {
         "name": "bottom",
         "arg": 2
      }
    ]
    ceil Rundet den Wert in jedem Zeitstempel auf die angegebene Genauigkeit: ceil(value /<arg> ) * )

    Argument: arg (Datentyp „Dezimalzahl“) – Dezimalgenauigkeit, auf die aufgerundet werden soll.

    sammeln Zeigt die Transformationsergebnisse der Transformationskette bis zum Punkt des Erfassungstransformationsaufrufs an. Die Ergebnisse der Erfassungstransformation enthalten eine eindeutige Markierung, aber Sie möchten möglicherweise auch eine Bezeichnung definieren.
    Beispiel:
    {
      "start": "PT1H",
      "end": "",
      "table": "mb_demo_drone",
      "limit": 5000,
      "metrics": [
        {
          "metric": "mb_demo_mt_altitude",
          "transforms": [
            {
              "name": "label",
              "arg": "Series Timestamp Values"
            },
            {
              "name": "collect"
            },
            {
              "name": "avg"
            },
            {
              "name": "label",
              "arg": "Average Timestamp Values"
            }
          ]
        }
      ]
    }
    constrainValues Ersetzt einen Wert außerhalb des angegebenen Bereichs durch den entsprechenden Höchst- oder Mindestwert.
    Wenn Sie beispielsweise Folgendes angegeben haben, ersetzt die Transformation jeden Wert, der kleiner als 0 ist, durch 0 und jeden Wert, der größer als 100 ist, durch 100.
    "transforms": [
      {
        "name": "constrainValues",
        "val1": 0,
        "val2": 100
      }
    ]
    Parameter:
    • val1 (Datentyp „Dezimalzahl“): Mindest- oder Höchstwert.
    • val2 (Datentyp „Dezimalzahl“): Mindest- oder Höchstwert.
    count Fasst die Zeitreihe zu einer Reihe zusammen. Die neue Serie enthält die Anzahl der Werte, die nicht NaN (Not a Number) für jeden entsprechenden Zeitstempel in der Serie sind.
    Ableitung Bestimmt die Änderungsrate zwischen Zeitstempeln. Dividiert die Differenz zwischen dem Wert in jedem Zeitstempel und dem Wert im nächsten Zeitstempel durch den Zeitraum des Zeitstempels.
    Hinweis:
    Diese Transformation gibt einen Wert weniger zurück als die Anzahl der Werte in der Reihe.
    div Dividiert den Wert in jedem Zeitstempel durch die angegebene Zahl (arg).

    Argument: arg (Dezimalzahl – Die Zahl, durch die der Wert jedes Zeitstempels geteilt werden soll.

    Umschlag Gibt zwei Zeitreihen zurück, von denen zu jedem Zeitpunkt eine den größten Wert und die andere den kleinsten Wert enthält.
    Hinweis:
    NaNs werden ignoriert, aber zurückgegeben, wenn keine anderen Rückgabewerte vorhanden sind.
    ab Potenziert den Wert der angegebenen Basis mit dem Wert in jedem Zeitstempel.

    Argument: arg (Dezimaldatentyp) – Der Basiswert.

    filter Wendet einen Aggregator auf den Inhalt eines Schiebefensters an, z. B. zur Erstellung eines gleitenden Durchschnitts.
    Parameter:
    • aggregator (Aggregator-Datentyp): Typ der auszuführenden Zusammenfassung.
    • window (Datentyp „Dauer“): Die Dauer des Schiebefensters.
    Stockwerk Rundet den Wert in jedem Zeitstempel auf die angegebene Genauigkeit ab: Floor(Wert /<arg> ) *

    Argument: arg (Dezimaldatentyp) – Die Dezimalgenauigkeit, auf die abgerundet werden soll.

    Fraktile Gibt eine Zeitreihe für jeden Bruch im angegebenen Array zurück. Jeder Zeitstempelwert ist der Wert, bei dem der angegebene Bruchteil von Werten für den entsprechenden Zeitstempel in der Eingabeserie unter dem angegebenen Prozentsatz liegt. Wenn der Bruch beispielsweise 0,5 ist, ist der Wert im Zeitstempel der Wert, bei dem die Hälfte der Werte in der Eingabereihe unter 0,5 liegt.

    Argument: arg (Array of Decimal) – Die für die Eingabeserie zu verwendenden Brüche.

    Beispiel:
    "transforms": [
      {
        "name": "fractiles",
        "arg": [0.25, 0.5, 0.75, 1]
      }
    ]
    groupBy Gruppiert Daten nach den angegebenen Feldern, bevor zusammengefasste Transformationen erfasst oder angewendet werden.

    Argument: arg (Zeichenfolge) – Eine durch Kommas getrennte Liste von Feldern in der Tabelle, die zum Gruppieren der Transformationsergebnisse verwendet werden sollen.

    Beispiel:
     "transforms": [
      {
        "name": "groupBy",
        "arg": "model"
      },
      {
        "name": "avg"
      },
      {
        "name": "label",
        "arg": "Model: %g"
      }
    ]
    integrieren Multipliziert den Wert in jedem Zeitstempel mit seinem Zeitraum.
    interpolieren Erstellt einen Datenwert für ein NaN-Datenelement durch Interpolation aus benachbarten Datenwerten.

    Argument: arg (Ganzzahl) – Anzahl der Datenbeispiele in jede Richtung, die auf einen Nicht-NaN-Wert überprüft werden soll. Wenn kein Nicht-NaN-Wert gefunden wird, wird NaN verwendet.

    invers Berechnet den Kehrwert jedes Zeitstempelwerts.
    iqr Führt eine Interquartilbereichstransformation durch und erstellt einen Ergebnissatz, der vier Reihen enthält:
    1. -IQR: Der Median aller Einträge unter Q1 - (1,5 * IQR).
    2. F1: Der Median der kleinsten Hälfte der Einträge.
    3. F3: Der Median der größten Hälfte der Einträge.
    4. +IQR: Median aller Einträge über Q3 + (1,5 * IQR).
    Hinweis:
    IQR = Q3 - Q1
    label Beschriftet eine Transformationskette.
    Hinweis:
    Nachfolgende Transformationen können die Bezeichnung ändern oder ersetzen.
    Argument: arg (Zeichenfolge) – Text der Bezeichnung. Kann die folgenden Formatierungsausdrücke enthalten:
    • %%: Escape-Zeichen für ein „%“-Literal.
    • %l: Aktuelle Bezeichnung, die ersetzt wird.
    • %s: Serienbetreff.
    • %g: Wert des Gruppieren-nach-Felds. Wenn es sich um einen referenzierten Datensatz handelt, dann der Wert des Namensfelds des Datensatzes. Wenn in der Transformation groupBy mehrere Gruppen angegeben sind, werden die Bezeichnungen durch Kommas getrennt.
    • %G: Wert des Gruppieren-nach-Felds. Wenn es sich um einen referenzierten Datensatz handelt, die sys_id des Datensatzes. Wenn mehrere Gruppen ausgewählt sind, werden die Werte durch Kommas getrennt.
    Beispiel:
    "transforms": [
      {
        "name": "label",
        "arg": "Series Timestamp Values"
      },
    ]
    "transforms": [
      {
        "name": "groupBy",
        "arg": "model"
      },
      {
        "name": "avg"
      },
      {
        "name": "label",
        "arg": "Model: %g"
      }
    ]
    limit Gibt höchstens die angegebene Dauer oder Anzahl von Werten zurück, beginnend mit dem zuletzt gespeicherten Wert.
    Parameter:
    • arg (Integer): Anzahl der Zeitstempelwerte, die für jede Zeitreihe zurückgegeben werden sollen.

      ODER

    • arg (Datentyp „Dauer“): Dauer, auf die jede Zeitreihe beschränkt werden soll.
    Protokoll Führt einen Logarithmus für den Wert in jedem Zeitstempel aus, wobei das Ergebnis das Protokoll der angegebenen Basis für den Zeitstempelwert ist.

    Argument: arg (Dezimaldatentyp) – Basis für die Berechnung des Logarithmus.

    mapValues Ersetzt alle Werte innerhalb des angegebenen Bereichs (einschließlich) durch den angegebenen Wert. Wenn sowohl lowerBound als auch upperBound als NaN angegeben sind, wird ein beliebiger NaN-Wert durch targetValueersetzt.
    Parameter:
    • untereGrenze (Datentyp „Dezimalzahl“): Der niedrigste Wert im Bereich.
    • obereGrenze (Datentyp „Dezimalzahl“): Der höchste Wert im Bereich.
    • targetValue (Datentyp „Dezimalzahl“): Ersatzwert.
    Folgendes ändert beispielsweise alle Werte in der Zeitreihe, die zwischen 0,1 und 0,9 liegen, in 1:
    "transforms": [
      {
        "name": "mapValues",
        "lowerBound": .1,
        "upperBound": .9,
        "targetValue": 1
      }
    ]
    max. Gibt eine Reihe zurück, die den maximalen Wert für jeden entsprechenden Zeitstempel in der Eingabe enthält.
    Median Erstellt eine Reihe, die den Median der Werte für jeden Zeitstempel in einem Satz von Reihen enthält.
    Wenn es n Serien gibt:
    • Wenn n ungerad ist, ist der Median der Wert (n / 2 + 1) für einen Zeitstempel.
    • Wenn n gerade ist, ist der Median der Durchschnitt der Werte (n / 2) und (n / 2 + 1) für einen Zeitstempel.
    min Gibt eine Reihe zurück, die den Mindestwert für jeden entsprechenden Zeitstempel in der Eingabe enthält.
    mul Multipliziert den Wert in jedem Zeitstempel mit der angegebenen Zahl.

    Argument: arg (Dezimaldatentyp) – Zahl, mit der der Wert jedes Zeitstempels multipliziert werden soll.

    partition

    Erzeugt eine neue Reihe mit Werten, die gefiltert werden, indem ein angegebener Aggregator auf ein nicht überlappendes Fenster angewendet wird.

    Parameter:
    • aggregator (Aggregator-Datentyp): Typ der auszuführenden Zusammenfassung.
    • window (Datentyp „Dauer“): Die Dauer des nicht überlappenden Fensters zum Anwenden des Aggregators.
    • Basis (DateTime-Datentyp): Die für die Partitionierung zu verwendende Nullpunktverschiebung. Um beispielsweise nach Tag (24 Stunden) zu partitionieren, setzen Sie diesen Wert auf Montag um Mitternacht in Ihrer Zeitzone. Um nach einem Zeitraum von 30 Tagen zu partitionieren, legen Sie diesen Wert auf den ersten Tag des letzten Monats fest.

      Standard: Beginn der EPOCHE.

    pow Erhöht jeden Zeitstempelwert um die angegebene Potenz.

    Argument: arg (Dezimaldatentyp) – Potenz, um die jeder Wert erhöht werden soll.

    Produkt Fasst die ausgewählten Metrikserien zu einer einzelnen Serie zusammen, die das Produkt aller Werte für jeden Zeitstempel enthält. NaNs sind ausgeschlossen. Wenn alle Zahlen in der Reihe NaN sind, ist die Ausgabe auch NaN.
    erneut berechnen Berechnet eine Zeitreihe entweder auf eine feste Anzahl von Punkten oder von einer Häufigkeit zur anderen.

    Verwenden Sie die Resample-Transformation, um die Anzahl der Beispiele im Ergebnissatz so zu reduzieren, dass sie der Anzahl der Beispiele entspricht, die Sie anzeigen möchten.

    Argumente: Sie können verschiedene Argumente für diese Transformation übergeben. Nachfolgend finden Sie eine Liste aller möglichen Argumentgruppen. Nur eine dieser Argumentgruppen kann innerhalb einer einzelnen Transformation übergeben werden. Die folgenden Argumentgruppen werden durch UND/ODER beschrieben. UND bedeutet, dass das Argument Teil der aktuellen Gruppe ist; OR bedeutet, dass es sich um den Beginn einer neuen Argumentgruppe handelt.
    • arg (Integer): Anzahl der Beispiele, die in den Ergebnissatz aufgenommen werden sollen. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie durch Durchschnittsbildung reduziert.

      ODER

    • arg (Datentyp „Dauer“): Die Häufigkeit, mit der ein erneutes Abtasten durchgeführt werden soll. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie durch Durchschnittsbildung reduziert.

      ODER

    • minValues (Integer): Die Mindestanzahl von Beispielen, die in den Ergebnissatz aufgenommen werden sollen. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen.

      UND

    • maxValues (Integer): Die maximale Anzahl von Beispielen, die in den Ergebnissatz aufgenommen werden sollen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie durch Durchschnittsbildung reduziert.

      ODER

    • aggregator (Datentyp „Aggregator“): Der Aggregator, der beim Resampling verwendet werden soll.

      UND

    • values (Integer): Die Anzahl der Beispiele, die in den Ergebnissatz aufgenommen werden sollen. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie reduziert, indem der angegebene aggregator auf sie angewendet wird.

      ODER

    • aggregator (Datentyp „Aggregator“): Der Aggregator, der beim Resampling verwendet werden soll.

      UND

    • Zeitraum (Datentyp „Dauer“): Die Häufigkeit, mit der ein erneutes Abtasten durchgeführt werden soll. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie reduziert, indem der angegebene aggregator auf sie angewendet wird.

      ODER

    • aggregator (Datentyp „Aggregator“): Der Aggregator, der beim Resampling verwendet werden soll.

      UND

    • minValues (Integer): Die Mindestanzahl von Beispielen, die in den Ergebnissatz aufgenommen werden sollen. Wenn die verfügbaren Beispiele kleiner als diese Anzahl sind, verwendet der Endpunkt eine Interpolation, um zusätzliche Beispiele zu erstellen.

      UND

    • maxValues (Integer): Die maximale Anzahl von Beispielen, die in den Ergebnissatz aufgenommen werden sollen. Wenn mehr Beispiele als diese Anzahl vorhanden sind, werden sie durch Durchschnittsbildung reduziert.
    Runden Rundet den Wert in jedem Zeitstempel auf die angegebene Genauigkeit: (Wert /<arg> ) *

    Argument: arg (Dezimaldatentyp) – Die Dezimalgenauigkeit, auf die aufgerundet werden soll.

    Stamm Berechnet den Stamm jedes Zeitstempelwerts anhand des angegebenen Index.

    Argument: arg (Dezimaldatentyp) – Der Index des Stamms.

    Folgendes gibt beispielsweise die Quadratwurzel jedes Zeitstempels zurück:
    "transforms": [
      {
        "name": "root",
        "arg": "2"
      },
    ]
    stddev Erstellt eine Reihe, die die Standardabweichung von Werten für jeden Zeitstempel in einem Satz von Reihen enthält.
    Sub Subtrahiert die angegebene Zahl vom Wert in jedem Zeitstempel.

    Argument: arg (Number) – Die Zahl, die vom Wert in jedem Zeitstempel abgezogen werden soll.

    sum Fasst die ausgewählten Metrikserien zu einer Serie zusammen, die die Summe aller Werte für jeden Zeitstempel enthält, ausschließlich NaNs. Wenn alle Zahlen in der Reihe NaN sind, ist die Ausgabe NaN.
    Zeitverschiebung Verschiebt den Zeitbereich, indem der angegebene Offset zum Zeitstempel eines Werts hinzugefügt wird, ohne den Wert zu ändern. Verwenden Sie diese Transformation, um Zeitstempel in eine andere Zeitzone zu verschieben.

    Argument: arg (Datentyp „Dauer“) – Die Zeit, um die verschoben werden soll.

    top Gibt die angegebene Anzahl von Serien mit den höchsten Werten zurück.

    Argument: arg (Ganzzahl) – Die Anzahl der zurückzugebenden Reihen.

    Das Folgende gibt beispielsweise die beiden Zeitreihen zurück, die die höchsten Wertesätze enthalten.
    "transforms": [
      {
         "name": "top",
         "arg": 2
      }
    ]
    Datentyp Beschreibung
    Aggregator Verfügbare Aggregatoren zur Verwendung innerhalb der Transformation.
    • Durchschnitt: Berechnet das arithmetische Mittel aller aktuell ausgewählten Reihen.
    • CHISQUARE: Zeigt an, wie gut ein statistisches Modell zum Metrikdatensatz passt.
    • LAST: Gibt den letzten definierten Wert im Zeitraumfenster zurück.
    • MAX: Zeigt den größten Wert für den Metrik-Datensatz zu jedem Zeitpunkt an.
    • Median: Zeigt den Median des Metrik-Datensatzes an. Der Median trennt die höheren Werte des Metrik-Datensatzes von den niedrigeren Werten.
    • MIN: Zeigt den kleinsten Wert für den Metrik-Datensatz zu jedem Zeitpunkt an.
    • STDDEV: Berechnet die Standardabweichung über die zugrunde liegenden Daten. Wird verwendet, um die Variation oder Streuung einer Menge von Datenwerten im Metrik-Datensatz zu quantifizieren.
    • SUM: Berechnet die Summe für alle aktuell ausgewählten Serien.
    DateTime Absolute Datums-/Uhrzeitwerte werden im ISO 8601-Datums- und Uhrzeitformat angegeben: JJJJ-MM-TTThh:mm:ss. Beispiel: 2020-02-28T13:10:42.

    Wobei:

    • [JJJJ]: Vierstellige Jahresangabe.
    • [MM]: Mit Nullen gefüllter Monat zwischen 01 und 12.
    • [TT]: Mit Nullen aufgefüllter Tag zwischen 01 und 31.
    • T: Stellt die Zeit dar und ist obligatorisch, bevor eine der Zeitkomponenten angegeben wird.
    • [hh]: Mit Nullen aufgefüllte Stunde zwischen 00 und 23.
    • [mm]: Mit Nullen aufgefüllte Minuten zwischen 00 und 59.
    • [ss]: Mit Nullen aufgefüllte Sekunden zwischen 00 und 59. Beachten Sie, dass die Schaltsekunden gleichmäßig über die letzten 1.000 Sekunden verteilt sind.

    Relative Datums-/Uhrzeitwerte werden mithilfe einer Dauer (Datentyp „Dauer“) angegeben, die von der aktuellen Uhrzeit subtrahiert wird.

    Beispiel: P7T = vor sieben Tagen.

    Dezimalzahl Dezimalwert, der wie folgt lauten kann:
    • Eine vorzeichenbehaftete Dezimalzahl mit beliebiger Genauigkeit, die die Exponentialschreibweise verwenden kann.

      Zum Beispiel:

      • 2
      • 1.7
      • -3,47
      • 1.0E+2
    • Eine Zeichenfolgendarstellung von:
      • Eine Dezimalzahl mit Vorzeichen, die Exponentialschreibweise verwenden kann und garantiert eine 64-Bit-IEEE 754-Gleitkommazahl mit doppelter Genauigkeit ist.
      • „NaN“
      • „-Infinity“
      • „+Unendlich“
    Dauer Zeit in einem Zeitintervall. Dauerwerte werden im ISO 8601-Dauerformat angegeben: P[n]Y[n]M[n]DT[n]H[n]M[n]S
    Wobei:
    • P: Dauerbezeichner, der als „Zeitraum“ bezeichnet wird und immer am Anfang der Dauer platziert wird.
    • [n]Y: Anzahl der Jahre.
    • [n]M: Anzahl der Monate.
    • [n]T: Anzahl der Tage.
    • T: Zeitbezeichner; ist obligatorisch, bevor eine der Zeitkomponenten angegeben wird.
    • [n]H: Anzahl der Stunden.
    • [n]M: Anzahl der Minuten.
    • [n]S: Anzahl der Sekunden.
    Beispiel:
    • P7D: Zeitraum von sieben Tagen.
    • P1M: Zeitraum von einem Monat.
    • PT15M: Zeitraum von 15 Minuten.
    • P1DT12H: Zeitraum von einem Tag und zwölf Stunden.

    cURL-Anforderung

    Das folgende Beispiel zeigt, wie dieser Endpunkt aufgerufen wird, um einen JSON-Stream für Metriken in der Tabelle „mb_demo_drone“ zurückzugeben. Hinweis: Während die Objekte in diesem Beispiel aus Gründen der Lesbarkeit auf mehrere Zeilen erweitert sind, befindet sich in einem tatsächlichen Ergebnis jedes zurückgegebene Objekt in einer eigenen Zeile. Sie können denselben Aufruf durchführen und einen Oktett-Stream zurückgeben, indem Sie --header "Accept:application/octet-stream" \ festlegen.

    curl "localhost:8080/api/now/v1/clotho/transform/stream" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --user "username":"password" \
    -d "{\
      \"start\": \"PT5M\",\
      \"end\": \"\",\
      \"table\": \"mb_demo_drone\",\
      \"query\": \"fleet.nameSTARTSWITHB\",\
      \"limit\": 5000,\
      \"metrics\": [\
        {\
          \"metric\": \"mb_demo_mt_altitude\",\
          \"label\": \"Series - Avg\",\
          \"transforms\": [\
            {\
              \"name\": \"partition\",\
              \"arg\": {\
                \"aggregator\": \"AVG\",\
                \"window\": \"PT5M\"\
              }\
            },
            {\
              \"name\": \"avg\"\
            }\
          ]\
        },
        {\
          \"metric\": \"mb_demo_mt_altitude\",\
          \"groupBy\": \"fleet\",\
          \"label\": \"Fleet - AVG\",\
          \"transforms\": [\
            {\
              \"name\": \"partition\",\
              \"arg\": {\
                \"aggregator\": \"AVG\",\
                \"window\": \"PT5M\"\
              }\
            },
            {\
              \"name\": \"avg\"\
            }\
          ]\
        }\
      ]\
    }"

    Antwort:

    [
      {
        "label": "Series - Avg",
        "tags": [
          "#4fb1114f-2426-4acb-8e3e-6435dd62134c"
        ],
        "species": "DOUBLE_SIGNAL",
        "range": [
          "2022-06-16T17:50:00Z",
          "2022-06-16T17:50:00Z"
        ],
        "values": [
          132.86805196126303
        ],
        "period": 300
      },
      {
        "label": "Fleet - AVG",
        "tags": [
          ":fleet:86fac11787333200a328c5b836cb0b4e:Bantams",
          "#6641aab4-c55f-4d11-8846-26b0b706ec1c"
        ],
        "species": "DOUBLE_SIGNAL",
        "range": [
          "2022-06-16T17:50:00Z",
          "2022-06-16T17:50:00Z"
        ],
        "values": [
          134.3775875908988
        ],
        "period": 300
      },
      {
        "label": "Fleet - AVG",
        "tags": [
          "#6641aab4-c55f-4d11-8846-26b0b706ec1c",
          ":fleet:4afac11787333200a328c5b836cb0b4e:Bumble Untd"
        ],
        "species": "DOUBLE_SIGNAL",
        "range": [
          "2022-06-16T17:50:00Z",
          "2022-06-16T17:50:00Z"
        ],
        "values": [
          129.02530271356756
        ],
        "period": 300
      }
    ]

    Im folgenden cURL-Beispiel wird die CSV-Formatoption verwendet, um die Höhenwerte (in der Datenbank als „mb_demo_mt_altitude“ gespeichert) des letzten Tages für jede in der Tabelle „mb_demo_drone“ [Drohnen] des Metricbase-Demo-Plugins gespeicherte Höhenwerte zurückzugeben. In diesem Beispiel werden die Daten in einem schmalen Tabellenformat mit drei Spalten zurückgegeben: die Sys_id des Subjekts, das die Bedrohung identifiziert, der Zeitstempel des Werts und der Höhenwert.

    curl "https://instance.servicenow.com/api/now/v1/clotho/transform/stream" \
    --request POST \
    --header "Accept:text/csv;format=narrow" \
    --header "Content-Type:application/json" \
    --user "user name":"password" \
    -d "{\
      \"start\": \"P1D\",\
      \"end\": \"\",\
      \"table\": \"mb_demo_drone\",\
      \"metrics\": [\
        {\
          \"metric\": \"mb_demo_mt_altitude\",\
          \"transforms\": []\
        }]\
    }"

    Ausgabe:

    Subject, Timestamp,"mb_demo_drone|mb_demo_mt_altitude"
    "a66b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,92.84400939941406
    "a66b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,92.2428970336914
    "6a6b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,92.0076904296875
    "ea6b051787333200a328c5b836cb0b92",2022-11-07T22:35:00Z,97.3113021850586
    "a66b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,108.49791717529297
    "6a6b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,109.04239654541016
    "6a6b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,93.72159576416016
    "ee6b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,107.69989776611328
    "ee6b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,100.86473083496094
    "ee6b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,95.77774047851562
    "666b051787333200a328c5b836cb0b92",2022-11-07T22:35:00Z,105.19712829589844
    "666b051787333200a328c5b836cb0b95",2022-11-07T22:35:00Z,105.92308807373047
    "6e6b051787333200a328c5b836cb0b99",2022-11-07T22:35:00Z,93.59339141845703
    "666b051787333200a328c5b836cb0b98",2022-11-07T22:35:00Z,94.51266479492188
    "e26b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,105.4367904663086
    "6e6b051787333200a328c5b836cb0b96",2022-11-07T22:35:00Z,94.64836883544922
    "6e6b051787333200a328c5b836cb0b93",2022-11-07T22:35:00Z,94.78523254394531
    "e26b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,96.99283599853516
    "aa6b051787333200a328c5b836cb0b96",2022-11-07T22:35:00Z,106.67017364501953
    "e26b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,94.2446517944336
    "aa6b051787333200a328c5b836cb0b93",2022-11-07T22:35:00Z,91.659912109375
    "226b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,99.5401840209961
    "226b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,98.13501739501953
    "226b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,92.2428970336914
    "226b051787333200a328c5b836cb0b90",2022-11-07T22:35:00Z,106.41876983642578
    "aa6b051787333200a328c5b836cb0b99",2022-11-07T22:35:00Z,107.69989776611328
    "626b051787333200a328c5b836cb0b93",2022-11-07T22:35:00Z,92.96666717529297
    "e66b051787333200a328c5b836cb0b99",2022-11-07T22:35:00Z,93.85079193115234
    "e66b051787333200a328c5b836cb0b93",2022-11-07T22:35:00Z,96.07303619384766
    "e66b051787333200a328c5b836cb0b96",2022-11-07T22:35:00Z,98.47595977783203
    "2a6b051787333200a328c5b836cb0b92",2022-11-07T22:35:00Z,95.9247055053711
    "226b051787333200a328c5b836cb0b9a",2022-11-07T22:35:00Z,99.5401840209961
    "2a6b051787333200a328c5b836cb0b98",2022-11-07T22:35:00Z,103.1417465209961
    "2a6b051787333200a328c5b836cb0b95",2022-11-07T22:35:00Z,96.99283599853516
    "ae6b051787333200a328c5b836cb0b95",2022-11-07T22:35:00Z,94.64836883544922
    "ae6b051787333200a328c5b836cb0b98",2022-11-07T22:35:00Z,101.8689956665039
    "ae6b051787333200a328c5b836cb0b92",2022-11-07T22:35:00Z,107.4388198852539
    "a26b051787333200a328c5b836cb0b98",2022-11-07T22:35:00Z,94.78523254394531
    "266b051787333200a328c5b836cb0b93",2022-11-07T22:35:00Z,94.51266479492188
    "2e6b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,108.49791717529297
    "2e6b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,97.15129852294922
    "2e6b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,103.36128997802734
    "a26b051787333200a328c5b836cb0b92",2022-11-07T22:35:00Z,100.47681427001953
    "266b051787333200a328c5b836cb0b96",2022-11-07T22:35:00Z,103.5830078125
    "266b051787333200a328c5b836cb0b99",2022-11-07T22:35:00Z,97.3113021850586
    "a26b051787333200a328c5b836cb0b95",2022-11-07T22:35:00Z,105.92308807373047
    "ea6b051787333200a328c5b836cb0b98",2022-11-07T22:35:00Z,95.34477996826172
    "ea6b051787333200a328c5b836cb0b95",2022-11-07T22:35:00Z,100.47681427001953
    "626b051787333200a328c5b836cb0b99",2022-11-07T22:35:00Z,100.86473083496094
    "626b051787333200a328c5b836cb0b96",2022-11-07T22:35:00Z,106.9239730834961

    MetricBase Time Series – POST /now/clotho/put

    Fügt Zeitreihendaten zur Datenbank MetricBase hinzu.

    URL-Format

    Versionierte URL: /api/now/{api_version}/clotho/put

    Unterstützte Anforderungsparameter

    Tabelle : 33. Pfadparameter
    Name Beschreibung
    api_version Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden.

    Datentyp: Zeichenfolge

    Tabelle : 34. Abfrageparameter
    Name Beschreibung
    sysparm_ignore_unknown_series Kennzeichnung, die angibt, ob unbekannte Serien ignoriert und die Transaktion fortgesetzt werden sollen, ohne einen Fehler zurückzugeben.
    Gültige Werte:
    • true: Unbekannte Serie ignorieren.
    • false: Unbekannte Reihen nicht ignorieren.

    Standardwert: true

    Tabelle : 35. Anforderungstextparameter (XML oder JSON)
    Name Beschreibung
    SerienRef Erforderlich. Zu aktualisierende Informationen.

    Datentyp: Array

    "seriesRef": [
      {
        "metric": "String",
        "subject": "String",
        "table": "String"
      }
    ]
    seriesRef.metric Erforderlich. Der Name der zu aktualisierenden Metrik.

    Datentyp: Zeichenfolge

    seriesRef.subject Erforderlich. Die sys_id des Datensatzes, in dem die Daten aktualisiert werden sollen. Befindet sich in der in seriesRef.tableangegebenen Tabelle.

    Datentyp: Zeichenfolge

    seriesRef.table Erforderlich. Der Name der Tabelle, in der die Daten gespeichert werden sollen.

    Datentyp: Zeichenfolge

    Werte Erforderlich. Die zu speichernden Reihenwerte.

    Datentyp: Array

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    werte.timestamp Erforderlich. Der ISO 8601-Zeitstempel des Werts.

    Datentyp: Zeichenfolge

    Format: JJJJ-MM-ttTHH:mm:ttZ

    Die Endung „Z“, die die UTC-Zeitzone in einem ISO-formatierten Zeitstempel angibt, ist optional.

    values.value Erforderlich. Der Metrikwert.

    Datentyp: Zahl

    Header

    Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST-API verwendet werden, finden Sie unter Unterstützte REST-API-Header.

    Tabelle : 36. Anforderungskopfzeilen
    Kopfzeile Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützt nur application/json.
    Content-Type Datenformat des Anforderungstexts. Unterstützt nur application/json.
    Tabelle : 37. Antwortkopfzeilen
    Kopfzeile Beschreibung
    Keine

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST-API verwendet werden, finden Sie unter HTTP-Antwortcodesder REST-API.

    Tabelle : 38. Statuscodes
    Statuscode Beschreibung
    200 Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet.
    401 Nicht autorisiert. Die Anmeldeinformationen sind falsch oder wurden nicht übergeben.
    500 Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler.

    Antworttextparameter (JSON oder XML)

    Name Beschreibung
    Nachricht Nachricht, die den Status der Anforderung angibt, z. B. OK, wenn die Anforderung erfolgreich verarbeitet wurde.

    cURL-Anforderung

    curl "https://instance.servicenow.com/api/now/v1/clotho/put" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
      \"seriesRef\": {
        \"subject\": \"3D666b051787333200a328c5b836cb0b92\",
        \"table\": \"mb_demo_drone\",
        \"metric\": \"mb_demo_mt_altitude\"
      },
      \"values\": [
        {
          \"timestamp\": \"2019-03-21T17:05:00Z\",
          \"value\": 0.150185
        },
        {
          \"timestamp\": \"2019-03-21T17:06:00Z\",
          \"value\": 0.46074
        },
        {
          \"timestamp\": \"2019-03-21T17:07:00Z\",
          \"value\": 0.83104
        },
        {
          \"timestamp\": \"2019-03-21T17:08:00Z\",
          \"value\": 1.260635
        },
        {
          \"timestamp\": \"2019-03-21T17:09:00Z\",
          \"value\": 1.749
        }
      ]
    }" \
    --user "username":"password"
    {
        "result": {
            "message": "ok"
        }
    }