Ereignisse mithilfe einer Webservice-API an die Instanz weiterleiten

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 4 Minuten Lesedauer
  • Sie können eine Webservice-Schnittstelle mit ServiceNow verwenden, die auf dem JSON-Objekt als Dateneingabe- und -ausgabeformat aufbaut.

    Vorbereitungen

    Erforderliche Rolle: evt_mgmt_integration

    Warum und wann dieser Vorgang ausgeführt wird

    Verwenden Sie diese Webservice-API, um Datensätze mit einem einzelnen Aufruf in die Event-Tabelle [em_event] einzufügen:

    https://<instancename>.service-now.com/api/global/em/jsonv2

    Hinweis:
    Business Rules in der Event-Tabelle werden nicht aufgerufen, wenn diese URL verwendet wird.

    Fügen Sie einem Event keine zusätzlichen Felder hinzu, indem Sie der Event-Tabelle [em_event] ein benutzerdefiniertes Feld hinzufügen. Zusätzliche Felder sollten im Feld Zusätzliche Informationen [additional_info] des Events eingeschlossen werden. Weitere Informationen zum Einbinden zusätzlicher Felder in Events finden Sie unter Benutzerdefinierte Warnungsfelder.

    Die URL im Format: http:// <instancename> .service-now.com/em_event.do?JSONv2&sysparm_action=insertMultiple wird auch unterstützt, wenn Sie Business-Regeln aktivieren möchten. Die Leistung der ersten URL ist jedoch überlegen.

    Um mit der URL zu arbeiten, die auf = insertMultiple endet, fügen Sie dem MID Server die folgenden Eigenschaften mit ihren entsprechenden Werten hinzu:
    • „mid.probe.event.queue.compress“ – Wert: false
    • „mid.probe.event.bulk_size“ – Wert: 100
    • „mid.probe.event.endpoint.url“ – Wert: em_event.do?JSONv2%26sysparm_action=insertMultiple

    Prozedur

    1. Senden Sie die Anforderung mit diesen Headern:
      Parameter Typ Beschreibung
      Akzeptieren Zeichenfolge Der zulässige Typ für diese Nachricht.

      Der Standardwert ist application/json.

      Content-Type Zeichenfolge Der Inhaltstyp für diese Nachricht.

      Der Standardwert ist application/json.

      POST Zeichenfolge Der Anforderungstyp ist POST mit mindestens einem nachstehenden Datensatz.
    2. Mindestens ein Event im JSON-Format kann als Nutzlast des Webservice-Aufrufs gesendet werden.
      Folgende Event-Felder müssen ausgefüllt werden:
      Variable Beschreibung
      Quelle Der Name des Event-Quelltyps. Beispielsweise SCOM oder SolarWinds.
      Quellinstanz (event_class) Spezifische Instanz der source. Beispiel: SCOM 2012 am 10.20.30.40
      node Das Knotenfeld muss einen Bezeichner für den Host (Server/Switch/Router usw.) enthalten, für den das Event ausgelöst wurde. Der Wert des Knotenfelds kann einer der folgenden Bezeichner des Hosts sein:
      • Name
      • FQDN
      • IP
      • Mac-Adresse
      Wenn in der CMDB vorhanden, wird dieser Wert auch verwendet, um das Event an das entsprechende ServiceNow-CI zu binden.
      resource Wenn sich das Event auf ein Gerät bezieht, z. B. Datenträger, CPU oder Netzwerkadapter, oder auf eine Anwendung oder einen Service, die bzw. der auf einem Host ausgeführt wird, muss der Name des Geräts oder der Anwendung in dieses Feld eingetragen werden. Zum Beispiel: Disk C:\ oder Nic 001 oder Webanwendung Handel.
      em_event.metric_name Name der Metrik, die die Warnung ausgelöst hat. Zum Beispiel: Verwendeter Arbeitsspeicher oder Gesamte CPU-Auslastung.
      type Der Typ des Events: Dieser Typ ähnelt möglicherweise dem Feld metric_name, wird jedoch für die allgemeine Gruppierung von Event-Typen verwendet.
      message_key Dieser Wert wird für die Deduplizierung von Events verwendet. Beispielsweise kann es zwei Events für dasselbe CI geben, wobei ein Event eine CPU von 50 % und das nächste Event eine CPU von 99 % hat. Wenn beide Events derselben ServiceNow-Warnung zugeordnet werden müssen, müssen sie denselben Nachrichtenschlüssel haben. Das Feld kann leer gelassen werden. In diesem Fall lautet der Feldwert standardmäßig source+node+type+resource+metric_name . Das Feld message_key darf nur ausgefüllt werden, wenn ein besserer Bezeichner als der Standardwert vorhanden ist.
      severity Der Schweregrad des Events. ServiceNow-Werte für den Schweregrad reichen von 1 – Kritisch bis 5 – OK, mit dem Schweregrad 0 – Löschen. Ursprüngliche Schweregradwerte sollten als Teil der zusätzlichen Informationen gesendet werden.
      additional_info Dieses Feld hat das JSON-Schlüssel-/Wert-Format und soll alle Informationen enthalten, die für den Anwender von Nutzen sein könnten. Es wird keinem vordefinierten ServiceNow-Event-Feld zugeordnet. Beispiele: IDs von Objekten in der Event-Quelle, Event-Priorität (wenn nicht gleich Schweregrad), Zuweisungsgruppeninformationen usw. Werte im Feld Zusätzliche Informationen eines Events, die nicht im JSON-Schlüssel-/Wert-Format vorliegen, werden auf das JSON-Format normalisiert, wenn das Event verarbeitet wird.
      time_of_event Zeit, zu der das Event am Event-Ursprung aufgetreten ist. Das Format lautet: jjjj-MM-tt HH:mm:ss.

      Die angegebene Zeit muss GMT entsprechen.

      resolution_state Optional – Um anzugeben, dass ein Event gelöst wurde oder nicht mehr auftritt, verwenden einige Event-Überwachungen den Schweregrad „löschen“, während andere Event-Überwachungen einen Wert für den Schweregrad „schließen“ verwenden. Dieses Feld wird für die Monitore verwendet, die Letzteres anbieten. Gültige Werte sind Neu und Schließen.
    3. Zum Erstellen mehrerer Datensätze mit einem einzigen Aufruf lösen Sie den Event-Webservice mit der folgenden URL aus, wobei die Variable <instance name> durch den Namen der erforderlichen Instanz ersetzt wird:
      https://<instancename>.service-now.com/api/global/em/jsonv2
      Beispiel für die Nutzlast von zwei Events, die in einem Webservice-Aufruf gesendet werden:
      { "records":	
       [
        {
         "source":"SCOM",
         "event_class":"SCOM 2012 on scom.server.com",
         "resource":"D:",
         "node":"name.of.node.com",
         "metric_name":"Percentage Logical Disk Free Space",
         "type":"Disk space",
         "severity":"4",
         "description":"The disk D: on computer V-W2K8-abc.abc.com is running out of disk space. The value that exceeded the threshold is 38% free space.",
         "additional_info": '{"scom-severity":"Medium","metric-value":"38","os_type":"Windows.Server.2008"}'
         },
        {
         "source":"SCOM",
         "event_class":"SCOM 2012 on scom.server.com",
         "resource":"MSSQL-database-name",
         "node":"other.node.com",
         "metric_name":"DB Allocated Size (MB)",
         "type":"Database Storage",
         "severity":"3",
         "description":"High number of active connections for MSSQL-database-name running on name.of.node.com. Active connections exceed 5000.",
         "additional_info": '{"scom-severity":"Medium","metric-value":"38","os_type":"Windows.Server.2008"}'
        }
       ]
      }
    4. Zum Erstellen eines Datensatzes mit einem einzigen Aufruf lösen Sie den Event-Webservice mit der folgenden URL aus, wobei die Variable <instancename> durch den Namen der erforderlichen Instanz ersetzt wird:
      http://<instancename>.service-now.com/api/global/em/jsonv2
      Beispiel für die Nutzlast von einem Event, das in einem Webservice-Aufruf gesendet wird:
      { "records":	
       [
        {
         "source":"SCOM",
         "event_class":"SCOM 2007 on scom.server.com",
         "resource":"C:",
         "node":"name.of.node.com",
         "metric_name":"Percentage Logical Disk Free Space",
         "type":"Disk space",
         "severity":"4",
         "description":"The disk C: on computer V-W2K8-dfg.dfg.com is running out of disk space. The value that exceeded the threshold is 41% free space.",
         "additional_info": '{"scom-severity":"Medium","metric-value":"38","os_type":"Windows.Server.2008"}'
        }     
       ]
      }