Events der New Relic-Plattform integrieren

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 4 Minuten Lesedauer
  • Integrieren Sie New Relic in Ereignismanagement, indem Sie in der alten und neuen New Relic-Konsole einen Standard-Webhook hinzufügen.

    Vorbereitungen

    Vergewissern Sie sich, dass das Plugin Ereignismanagement „ Connectors (sn_em_connector)“ in der Instanz Now Platform installiert ist.

    Erforderliche Rolle: evt_mgmt_integration

    Warum und wann dieser Vorgang ausgeführt wird

    Konfigurieren Sie die Ereignismanagement-Umgebung für die Erfassung von Events aus New Relic, indem Sie New Relic als Datenquelle authentifizieren. Legen Sie Ihre Instanz Now Platform mit einem Standard-Webhook als REST-Endpunkt fest. Führen Sie Verfahrensschritt 1 für die neue Konsole aus. Führen Sie Verfahrensschritt 2 für die alte Konsole aus.

    Ab Release Xanadu verfügen die mit dem Connector bereitgestellten OOTB-Regeln (Out-Of-The-Box), die Sie zuvor nicht verwendet haben (d. h. weder aktiviert, deaktiviert noch geändert), jetzt über die Option Zusätzliche Abgleichsregeln anwenden Checkbox auf „wahr“ gesetzt. Zuvor war dieses Kontrollkästchen deaktiviert. Mit diesem Change können Sie weitere Ereignisregeln oder Automatisierungen mit denselben Filterbedingungen für den Connector ausführen.
    Hinweis:
    Diese Funktion gilt nur für aktive Ereignisregeln.

    Prozedur

    1. Für die neue Konsole:
      1. Erstellen Sie ein Ziel.
        1. Navigieren zuWarnungen und KI > Ziele.
        2. Wählen Sie im AbschnittZielehinzufügen den KanaltypWebhook aus.
        3. Geben Sieim Feld Webhook-Name den Webhook-Namen ein.
        4. Geben Sie im FeldEndpunkt-URLFolgendes ein:https://<InstanceName> .service-now.com/api/sn_em_connector/em/inbound_event?source=newrelic
        5. GebenSie im Abschnitt Basisauthentifizierung Ihren Anwendernamen und Ihr Passwort ein.
          Hinweis:
          Stellen Sie sicher, dass dem ausgewählten Anwender die Rolle evt_mgmt_integration zugewiesen ist. Um eine ordnungsgemäße Authentifizierung sicherzustellen, verwenden Sie den Benutzer mit den geringsten Berechtigungen mit der Rolle evt_mgmt_integration anstelle eines Benutzers mit hohen Berechtigungen.
        6. WählenSie Ziel speichern.
      2. Erstellen Sie eine Richtlinie.
        1. Navigieren zuWarnungen und KI > Warnungsbedingungen und -richtlinien.
        2. Wählen Sie dieRichtlinie Neue Warnung aus,und definieren Sie eine Richtlinie.
        3. WählenSie Benachrichtigungen einrichten.
        4. Wählen Sie im Abschnitt „Kanalhinzufügen“ dieOption Webhook aus, und wählen Sie dann das Ziel aus, das Sie im vorherigen Unterschritt erstellt haben.
        5. Fügen Sieim Abschnitt Nutzlastvorlage die folgende JSON-Nutzlast ein.
          { "account_id": {{nrAccountId}}, "account_name": {{json accumulations.tag.account.[0]}}, "closed_violations_count": {{closedIncidentsCount}}, "open_violations_count": {{openIncidentsCount}}, "condition_description": "{{escape accumulations.conditionDescription.[0]}}", "condition_family_id": {{accumulations.conditionFamilyId.[0]}}, "condition_name": "{{escape accumulations.conditionName.[0]}}", "current_state": {{json state}}, "details": {{json issueTitle}}, "duration": {{#if issueDurationMs}}{{issueDurationMs}}{{else}}0{{/if}}, "event_type": "INCIDENT", "incident_acknowledge_url": {{json issueAckUrl}}, "incident_id": {{json issueId}}, "incident_url": {{json issuePageUrl}}, "metadata": { {{#if locationStatusesObject}}"location_statuses": {{json locationStatusesObject}},{{/if}} {{#if accumulations.metadata_entity_type}}"entity.type": {{json accumulations.metadata_entity_type.[0]}},{{/if}} {{#if accumulations.metadata_entity_name}}"entity.name": {{json accumulations.metadata_entity_name.[0]}},{{/if}} "section": "metadata" }, "owner": {{json owner}}, "policy_name": {{json accumulations.policyName.[0]}}, "policy_url": {{json policyUrl}}, "runbook_url": {{json accumulations.runbookUrl.[0]}}, "severity": {{json priority}}, "targets": [ { "id": "{{labels.targetId.[0]}}", "name": "{{#if accumulations.targetName}}{{escape accumulations.targetName.[0]}}{{else if entitiesData.entities}}{{escape entitiesData.entities.[0].name}}{{else}}N/A{{/if}}", "link": "{{issuePageUrl}}", "product": "{{accumulations.conditionProduct.[0]}}", "type": "{{#if entitiesData.types.[0]}}{{entitiesData.types.[0]}}{{else}}N/A{{/if}}", "labels": { {{#each accumulations.rawTag}}"{{escape @key}}": {{#if this.[0]}}{{json this.[0]}}{{else}}"empty"{{/if}}{{#unless @last}},{{/unless}}{{/each}} } } ], "timestamp": {{updatedAt}}, "violation_callback_url": {{json issuePageUrl}}, "violation_chart_url": {{json violationChartUrl}} }
        6. Wählen Sie Testbenachrichtigungsendenaus, um das Testereignis in Ihrer Instanz ServiceNow abzurufen.
        7. WählenSie Nachricht speichern aus.
        8. Wählen SieWorkflowaktivieren aus, um den Workflow zu aktivieren.
      3. Erstellen Sie Warnungsbedingungen, die auf die Richtlinie angewendet werden sollen:
        1. Navigieren zuWarnungen und KI > Warnungsbedingungen und -richtlinien.
        2. WählenSie Warnungsbedingung erstellen aus, definieren Sie die erforderlichen Warnungsdetails, und fügen Sie sie der Richtlinie hinzu, die Sie im vorherigen Schritt erstellt haben.
        3. WählenSie Bedingung speichern aus.
    2. Für die alte Konsole.
      1. Erstellen Sie einen Benachrichtigungskanal.
        1. Navigieren zuWarnungen und KI > Benachrichtigungskanäle.
        2. Wählen Sie auf der RegisterkarteKanaldetailsden KanaltypWebhook aus.
        3. Geben Sie im TextfeldBasis-URL Folgendes ein:https://<InstanceName> .service-now.com/api/sn_em_connector/em/inbound_event?source=newrelic
        4. Geben Sie im Abschnitt „Basisauth.“ Benutzername und Passwort des entsprechenden Benutzers ein.
          Hinweis:
          Stellen Sie sicher, dass dem ausgewählten Anwender die Rolle evt_mgmt_integration zugewiesen ist. Um eine ordnungsgemäße Authentifizierung sicherzustellen, verwenden Sie den Benutzer mit den geringsten Berechtigungen mit der Rolle evt_mgmt_integration anstelle eines Benutzers mit hohen Berechtigungen.
        5. WählenSie im AbschnittCustom Payload (Anwenderdefinierte Nutzlast) Anwenderdefinierte Nutzlast hinzufügenund anschließend den NutzlasttypJSONaus.
        6. Fügen Sie die folgende JSON-Payload inCustom Payload(Anwenderdefinierte Payload) ein.
          { "account_id": "$ACCOUNT_ID", "account_name": "$ACCOUNT_NAME", "closed_violations_count_critical": "$CLOSED_VIOLATIONS_COUNT_CRITICAL", "closed_violations_count_warning": "$CLOSED_VIOLATIONS_COUNT_WARNING", "condition_description": "$DESCRIPTION", "condition_family_id": "$CONDITION_FAMILY_ID", "condition_name": "$CONDITION_NAME", "current_state": "$EVENT_STATE", "details": "$EVENT_DETAILS", "duration": "$DURATION", "event_type": "$EVENT_TYPE", "incident_acknowledge_url": "$INCIDENT_ACKNOWLEDGE_URL", "incident_id": "$INCIDENT_ID", "incident_url": "$INCIDENT_URL", "metadata": "$METADATA", "open_violations_count_critical": "$OPEN_VIOLATIONS_COUNT_CRITICAL", "open_violations_count_warning": "$OPEN_VIOLATIONS_COUNT_WARNING", "owner": "$EVENT_OWNER", "policy_name": "$POLICY_NAME", "policy_url": "$POLICY_URL", "runbook_url": "$RUNBOOK_URL", "severity": "$SEVERITY", "targets": "$TARGETS", "timestamp": "$TIMESTAMP", "violation_callback_url": "$VIOLATION_CALLBACK_URL", "violation_chart_url": "$VIOLATION_CHART_URL" }
      2. Erstellen Sie eine Richtlinie.
        1. Navigieren zuWarnungen und KI > Richtlinien.
        2. Wählen Sie dieRichtlinie Neue Warnung aus,und definieren Sie eine Richtlinie.
        3. Wählen Sie im Abschnitt „BenachrichtigungskanäleHinzufügen, wählenSie Webhook aus, und wählen Sie dann den Kanal aus, den Sie im vorherigen Schritt erstellt haben.
      3. Erstellen Sie Warnungsbedingungen, die auf die Richtlinie angewendet werden sollen:
        1. Navigieren zuInfrastruktur > Einstellungen > Warnungen.
        2. WählenSie Warnungsbedingung erstellen aus, definieren Sie die erforderlichen Warnungsdetails, und fügen Sie sie der Richtlinie hinzu, die Sie im vorherigen Schritt erstellt haben.
        3. WählenSie Erstellen aus.

    Ergebnisse

    Die Übertragung von Warnungen aus der New Relic-Konsole in das Plugin Event Management beginnt. Das Plugin extrahiert die Informationen aus der ursprünglichen New Relic-Warnmeldung, um die erforderlichen Event-Felder zu füllen, und fügt das Event in die Datenbank ein. Navigieren Sie in Ihrer Instanz Now Platform zuAlle Ereignisse, um die Ereignisse anzuzeigen.
    Hinweis:
    Standardmäßig ist die Hostbindung für New Relic-Events für alle Provider (Azure /AWS/GCP) aktiviert. Wenn alle Hosts in der Umgebung mit Cloud-Discovery durch die Bereitstellung von Anmeldeinformationen erkannt werden und sich erkannte Ressourcen in der Liste cmdb_ci_vm_object befinden, tritt die VM-Bindung möglicherweise nicht auf. Um dieses Problem zu beheben, müssen Sie die Ereignisregel „New Relic – Allgemein“ aktivieren. Weitere Informationen zu Ereignisregeln finden Sie unterEvent-Regeln.