DCIM-Metrikdaten-Feed-API
Die DCIM-Metrikdaten-Feed Die API stellt einen Endpunkt bereit, um DCIM-Metrikdaten (Data Center Infrastructure Management) aus einem externen System zu akzeptieren und die Daten in einem zu speichern MetricBase Datenbank.
Diese API empfängt Metrikdaten in nahezu Echtzeit, z. B. Temperatur, Feuchtigkeit und Stromverbrauch.
Diese API kann zur Verwendung mit einem ausgewählten externen System erweitert werden, indem der geskriptete Erweiterungspunkt implementiert wird TNIDCIMFeedParser . Die Standardimplementierung TNIDCIMFeedEquinixParser Kann als Beispiel verwendet werden. Weitere Informationen zu Erweiterungspunkten finden Sie unter Erweiterungspunkte verwenden, um die Anwendungsfunktionalität zu erweitern.
Diese API ist in der Anwendung „Netzwerkbestand – Erweitert“ enthalten, die im verfügbar ist ServiceNow Store. Diese API erfordert auch MetricBase Plugin (com.snc.clotho).
Der aufrufende Anwender muss über die Rolle sn_ni_adv.metric_Integrator verfügen.
DCIM-Metrikdaten-Feed: /sn_ni_adv/dcim/Feed/{vendorname} VERÖFFENTLICHEN
Speichert Metrikdaten wie Temperatur, Feuchtigkeit und Stromverbrauch in MetricBase.
- Stromkreis [cmdb_ci_Circuit]
- Schrank [cmdb_ci_Container_Cabinet]
- Cage [cmdb_ci_Cage]
- Rechenzentrum [cmdb_ci_Datacenter]
- Rechenzentrumszone [cmdb_ci_Zone]
So verwenden Sie diesen Endpunkt mit zusätzlichen CI-Typen: Erstellen Sie Metrikdefinitionen Und implementieren Sie den geskripteten Erweiterungspunkt TNIDCIMFeedParser .
URL-Format
Standard-URL: /api/sn_ni_adv/dcim/Feed/{vendorname}
Unterstützte Anforderungsparameter
| Name | Beschreibung |
|---|---|
| lieferantenname | Name des externen Systems, von dem Metrikdaten empfangen werden sollen. Bei Verwendung der Standardimplementierung dieser API ist dieser Wert Datentyp: Zeichenfolge |
| Name | Beschreibung |
|---|---|
| Keine |
| Name | Beschreibung |
|---|---|
| Daten | Erforderlich. Die Daten, in denen gespeichert werden soll MetricBase. Datentyp: Objekt Hinweis:
Die Elemente, die in diesem Objekt enthalten sein müssen, variieren je nach typeParameter und Konfigurationselementtyp, z. B. Rechenzentrum oder Stromkreis. |
| Daten.ApparentPower | Daten zur Scheinleistung in Kilovolt-Ampere. Erforderlich, wenn typeParameter ist Leistung .Datentyp: Objekt |
| Daten.ApparentLeistung.Einheit | Maßeinheit. Der einzige akzeptierte Wert ist KVA .Datentyp: Zeichenfolge |
| Data.ApparentPower.Wert | Der aufgezeichnete Kilovolt-Ampere-Messwert. Datentyp: Zeichenfolge |
| Daten.Asset | Asset-Daten. Erforderlich für Stromkreise, wenn typeParameter ist Gemessene Leistung Oder Leistung . Erforderlich für Schränke, Käfige und Zonen, wenn typeParameter ist Umwelt . Datentyp: Objekt |
| data.asset.id | Name des Assets. Tabelle: Stromkreis [cmdb_ci_Circuit], Schrank [cmdb_ci_Container_Cabinet], Käfig [cmdb_ci_Cage] oder Rechenzentrumszone [cmdb_ci_Zone] Feld: Name Datentyp: Zeichenfolge |
| Daten.Asset.Ebene | Art des Assets. Wird für Schränke, Käfige und Zonen verwendet. Mögliche Werte:
Datentyp: Zeichenfolge |
| Data.Asset.type | Art des Assets. Wird für Schaltkreise verwendet. Der einzige akzeptierte Wert ist STROMKREIS .Datentyp: Zeichenfolge |
| data.cabinet | Name des Schranks. Erforderlich für Schränke, wenn typeParameter ist Gemessene Leistung Oder Leistung .Tabelle: Containerschrank [cmdb_ci_Container_Cabinet] Feld: Name Datentyp: Zeichenfolge |
| data.cabinetRating | Energieverbrauch, für den der Schrank bewertet ist, in Kilovolt-Ampere. Erforderlich, wenn typeParameter ist Leistung .Datentyp: Objekt |
| data.cabinetRating.unit | Maßeinheit. Der einzige akzeptierte Wert ist KVA .Datentyp: Zeichenfolge |
| data.cabinetRating.value | Die Leistungsnutzungsbewertung für den Schrank. Datentyp: Zeichenfolge |
| data.cage | Name des Käfigs. Erforderlich für Käfige, wenn typeParameter ist Gemessene Leistung Oder Leistung .Tabelle: Cage [cmdb_ci_Cage] Feld: Name Datentyp: Zeichenfolge |
| Daten.Vertragsmacht | Vom Vertrag zugewiesener Energieverbrauch in Kilovolt-Ampere. Erforderlich, wenn typeParameter ist Leistung .Datentyp: Objekt |
| Daten.vertraglich Leistung.Einheit | Maßeinheit. Der einzige akzeptierte Wert ist KVA .Datentyp: Zeichenfolge |
| Daten.vertragliche Leistung.Wert | Der vom Vertrag zugeteilte Stromverbrauch. Datentyp: Zeichenfolge |
| Daten.ibx | Name des Rechenzentrums Erforderlich beim Speichern von Metrikdaten für ein Rechenzentrum. Tabelle: Rechenzentrum [cmdb_ci_Datacenter] Datentyp: Zeichenfolge |
| Daten.KilowattHour | Stromnutzungsdaten in Kilowattstunden. Erforderlich, wenn typeParameter ist Gemessene Leistung . Datentyp: Objekt |
| Daten.KilowattHour.unit | Maßeinheit. Der einzige akzeptierte Wert ist KWh .Datentyp: Zeichenfolge |
| Daten.KilowattHour.Wert | Der aufgezeichnete Kilowattstunden-Messwert. Datentyp: Zeichenfolge |
| Daten.SpitzenLastSevenTage | Der maximale Stromverbrauch innerhalb der letzten Woche in Kilovolt-Ampere. Erforderlich, wenn typeParameter ist Leistung . Datentyp: Objekt |
| Data.peakLastSevenDays.unit | Maßeinheit. Der einzige akzeptierte Wert ist KVA .Datentyp: Zeichenfolge |
| Data.peakLastSevenDays.Wert | Der maximale Stromverbrauchswert der letzten Woche. Datentyp: Zeichenfolge |
| Data.peakLastSevenDaysRatio | Der maximale Prozentsatz des Stromverbrauchs der vom Vertrag innerhalb der letzten Woche zugewiesenen Menge. Erforderlich, wenn typeParameter ist Leistung .Datentyp: Objekt |
| Data.peakLastSevenDaysRatio.unit | Maßeinheit. Der einzige akzeptierte Wert ist PROZENT .Datentyp: Zeichenfolge |
| Data.peakLastSevenDaysRatio.value | Der maximale Prozentsatz der verbrauchten Leistung. Datentyp: Zeichenfolge |
| Data.powerConsumptionToContractual | Prozentsatz des verbrauchten Stroms von der vom Vertrag zugewiesenen Menge. Erforderlich, wenn typeParameter ist Leistung .Datentyp: Objekt |
| Data.powerConsumptionToContractual.unit | Maßeinheit. Der einzige akzeptierte Wert ist PROZENT .Datentyp: Zeichenfolge |
| Data.powerConsumptionToContractual.value | Der Prozentsatz des verbrauchten Stroms. Datentyp: Zeichenfolge |
| Data.powerFactor | Leistungsfaktordaten. Erforderlich, wenn typeParameter ist Leistung .Datentyp: Objekt |
| Data.powerFactor.unit | Maßeinheit. Der einzige akzeptierte Wert ist PF .Datentyp: Zeichenfolge |
| Daten.PowerFactor.Wert | Der Leistungsfaktorwert. Datentyp: Zeichenfolge |
| Daten.Lesen | Die gesammelten Umgebungsdaten. Erforderlich, wenn typeParameter ist Umwelt . Datentyp: Objekt |
| Daten.Lesen.Einheit | Maßeinheit. Mögliche Werte:
Datentyp: Zeichenfolge |
| Daten.Lesen.Wert | Der aufgezeichnete Wert. Datentyp: Zeichenfolge |
| Daten.Lesezeit | Erforderlich. Datum und Uhrzeit der Datenerfassung. Dieser Wert muss in UTC im ISO 8601-Format angegeben sein. Beispiel: Datentyp: Zeichenfolge |
| Daten.RealPower | Stromnutzungsdaten in Kilowatt. Erforderlich, wenn typeParameter ist Leistung . Datentyp: Objekt |
| Daten.RealPower.Einheit | Maßeinheit. Der einzige akzeptierte Wert ist KW .Datentyp: Zeichenfolge |
| Daten.RealPower.Wert | Der aufgezeichnete Kilowatt-Messwert. Datentyp: Zeichenfolge |
| Data.soldAktuelles | Vom Vertrag zugeteilter Strom in Ampere. Erforderlich, wenn typeParameter ist Leistung .Datentyp: Objekt |
| Data.soldAktuelles.Einheit | Maßeinheit. Der einzige akzeptierte Wert ist A .Datentyp: Zeichenfolge |
| Data.soldAktuelles.Wert | Der vom Vertrag zugeteilte Strom. Datentyp: Zeichenfolge |
| Daten.Tag | Objekt, das den Typ der Umgebungsdaten enthält. Erforderlich, wenn typeParameter ist Umwelt .Datentyp: Objekt |
| data.tag.id | Der Typ der Umgebungsdaten. Mögliche Werte:
Datentyp: Zeichenfolge |
| type | Erforderlich. Typ der Metrikdaten. Mögliche Werte:
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 .
| Kopfzeile | Beschreibung |
|---|---|
| Akzeptieren | Datenformat des Antworttexts. Nur unterstützt application/json;charset=UTF-8. |
| Autorisierung | Standard. |
| Content-Type | Datenformat des Anforderungstexts. Unterstützt nur application/json. |
| Kopfzeile | Beschreibung |
|---|---|
| Inhaltstyp | Datenformat des Antworttexts. Nur unterstützt application/json;charset=UTF-8. |
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 REST API-HTTP-Antwortcodes .
| 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. |
| 403 | Unzulässig. Der Anwender hat keine Zugriffsrechte für den angegebenen Datensatz. |
| 404 | Nicht gefunden. Das angeforderte Element wurde nicht gefunden. |
| 429 | Zu viele Anforderungen. |
| 500 | Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler. |
Parameter des Antwort-Haupttexts (JSON)
| Name | Beschreibung |
|---|---|
| Ergebnis | Details zur Anforderung Datentyp: Objekt |
| Ergebnis.Status | Status der Anforderung. Datentyp: Zeichenfolge |
| Ergebnis.sys_ID | SYS_ID des CI, das mit den Metrikdaten aktualisiert wurde. Tabelle: Stromkreis [cmdb_ci_Circuit], Schrank [cmdb_ci_Container_Cabinet], Cage [cmdb_ci_Cage], Rechenzentrum [cmdb_ci_Datacenter] oder Rechenzentrumszone [cmdb_ci_Zone] Datentyp: Zeichenfolge |
cURL-Anforderung
Speichert gemessene Stromdaten für ein Rechenzentrum.
curl "https://instance.service-now.com/api/sn_ni_adv/dcim/feed/vendorname" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"type": "metered-power",
"data": {
"ibx": "Datacenter Name",
"kilowattHour": {
"value": "40509.323",
"unit": "kWh"
},
"readingTime": "2025-07-03T16:22:15.000Z"
}
}" \
--user 'username':'password'
Antworttext.
{
"result": {
"status": "success",
"sys_id": "c88dde85ff2662109cb9ffffffffffcc"
}
}
cURL-Anforderung
Speichert Stromdaten für einen Stromkreis.
curl "https://instance.service-now.com/api/sn_ni_adv/dcim/feed/vendorname" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"type": "power",
"data": {
"asset": {
"id": "Circuit Name",
"type": "CIRCUIT"
},
"realPower": {
"value": "0.522",
"unit": "kW"
},
"apparentPower": {
"value": "1.070",
"unit": "kVA"
},
"contractualPower": {
"value": "60.000",
"unit": "kVA"
},
"powerFactor": {
"value": "0.48",
"unit": "pf"
},
"soldCurrent": {
"value": "15.000",
"unit": "A"
},
"powerConsumptionToContractual": {
"value": "32.151",
"unit": "PERCENT"
},
"cabinetRating": {
"value": "123.300",
"unit": "kVA"
},
"peakLastSevenDays": {
"value": "1.146",
"unit": "kVA"
},
"peakLastSevenDaysRatio": {
"value": "34.424",
"unit": "PERCENT"
},
"readingTime": "2025-07-03T16:22:15.000Z"
}
}" \
--user 'username':'password'
Antworttext.
{
"result": {
"status": "success",
"sys_id": "c67dbe45fc2662109cb9ffffffffffcd"
}
}
cURL-Anforderung
Speichert Temperaturdaten für eine Zone.
curl "https://instance.service-now.com/api/sn_ni_adv/dcim/feed/vendorname" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"type": "environmental",
"data": {
"asset": {
"id": "Zone Name",
"level": "ZONE"
},
"reading": {
"value": "23.300",
"unit": "CELSIUS"
},
"tag": {
"id": "temperature"
},
"readingTime": "2025-07-03T16:22:15.000Z"
}
}" \
--user 'username':'password'
Antworttext.
{
"result": {
"status": "success",
"sys_id": "c64dbc42fe2862109cb9ffffffffffed"
}
}
cURL-Anforderung
Speichert Feuchtigkeitsdaten für einen Schrank.
curl "https://instance.service-now.com/api/sn_ni_adv/dcim/feed/vendorname" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"type": "environmental",
"data": {
"asset": {
"id": "Test Cabinet",
"level": "CABINET"
},
"reading": {
"value": "66.120",
"unit": "PERCENT"
},
"tag": {
"id": "humidity"
},
"readingTime": "2025-07-03T16:22:15.000Z"
}
}" \
--user 'username':'password'
Antworttext.
{
"result": {
"status": "success",
"sys_id": "c24dbc82fe3862107cb9ffffffffffbc"
}
}