Integrar eventos da plataforma New Relic

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 4 min. de leitura
  • Integre o New Relic ao Gestão de eventos adicionando um webhook padrão nos consoles antigos e novos do New Relic.

    Antes de Iniciar

    Verifique se o plug-in Gestão de eventos Connectors (sn_em_connector) está instalado na instância Now Platform.

    Função necessária: evt_mgmt_integration

    Por Que e Quando Desempenhar Esta Tarefa

    Configure o ambiente Gestão de eventos para a coleção de eventos do New Relic autenticando o New Relic como uma fonte de dados. Defina sua instância Now Platform como o endpoint REST usando um webhook padrão. Use a etapa 1 do procedimento para o novo console. Use a etapa 2 do procedimento para o console antigo.

    A partir da versão Xanadu, as regras OOTB (prontas para uso) fornecidas com o conector, que você não usou anteriormente (ou seja, nem ativadas, desativadas nem modificadas), agora terão as regras de correspondência adicionais Aplicar caixa de seleção definida como verdadeira. Anteriormente, essa caixa de seleção estava desabilitada. Essa mudança permite que você execute mais regras de evento ou automação usando as mesmas condições de filtro para o conector.
    Nota:
    Este recurso se aplica somente a regras de evento ativas.

    Procedimento

    1. Para o novo console:
      1. Crie um destino.
        1. Navegar atéAlertas e IA > Destinos.
        2. Na seçãoAdicionar destinos, selecione o tipo de canalWebhook.
        3. No campoNome do webhook, insira o nome do webhook.
        4. No campoURL do endpoint, insira:https://<InstanceName> .service-now.com/api/sn_em_connector/em/inbound_event?source=newrelic
        5. Na seçãoAutenticação básica, insira seu nome de usuário e senha.
          Nota:
          Verifique se a função evt_mgmt_integration está atribuída ao usuário selecionado. Para garantir a autenticação apropriada, use o usuário com menos privilégios com a função evt_mgmt_integration, em vez de um usuário com privilégios altos.
        6. SelecioneSalvar destino.
      2. Crie uma política.
        1. Navegar atéAlertas e IA > Condições e políticas de alerta.
        2. SelecioneNova política de alertae defina uma política.
        3. SelecioneConfigurar notificações.
        4. Na seçãoAdicionar canal, selecioneWebhooke selecione o destino que você criou na subetapa anterior.
        5. Na seçãoModelo de carga, cole a seguinte carga JSON.
          { "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. SelecioneEnviar notificação de testepara obter o evento de teste na instância ServiceNow.
        7. SelecioneSalvar mensagem.
        8. SelecioneAtivar fluxode trabalho para ativar o fluxo de trabalho.
      3. Crie condições de alerta a serem aplicadas à política:
        1. Navegar atéAlertas e IA > Condições e políticas de alerta.
        2. SelecioneCriar condição de alerta, defina os detalhes do alerta necessários e adicione-o à política que você criou na etapa anterior.
        3. SelecioneSalvar condição.
    2. Para o console antigo.
      1. Crie um canal de notificação.
        1. Navegar atéAlertas e IA > Canais de notificação.
        2. Na guiaDetalhes do canal, selecione o tipo de canalWebhook.
        3. Na caixa de textoURL base, insira:https://<InstanceName> .service-now.com/api/sn_em_connector/em/inbound_event?source=newrelic
        4. Na seção Autenticação básica, insira o nome de usuário e a senha do usuário relevante.
          Nota:
          Verifique se a função evt_mgmt_integration está atribuída ao usuário selecionado. Para garantir a autenticação apropriada, use o usuário com menos privilégios com a função evt_mgmt_integration, em vez de um usuário com privilégios altos.
        5. Na seçãoCarga personalizada, selecioneAdicionar carga personalizadae selecione o tipo de cargaJSON.
        6. Cole a seguinte carga JSON naCarga personalizada.
          { "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. Crie uma política.
        1. Navegar atéAlertas e IA > Políticas.
        2. SelecioneNova política de alertae defina uma política.
        3. Na seçãoCanais de notificação, selecioneAdicionar,Webhooke selecione o canal que você criou na etapa anterior.
      3. Crie condições de alerta a serem aplicadas à política:
        1. Navegar atéInfraestrutura > Configurações > Alertas.
        2. SelecioneCriar condição de alerta, defina os detalhes do alerta necessários e adicione-o à política que você criou na etapa anterior.
        3. SelecioneCriar.

    Resultado

    Os alertas começam a fluir do console do New Relic para o plug-in Gestão de eventos. O plug-in extrai informações da mensagem de alerta original do New Relic para preencher os campos de evento obrigatórios e insere o evento no banco de dados. Em sua instância Now Platform, navegue atéTodos Eventospara ver os eventos.
    Nota:
    Por padrão, a vinculação de host está habilitada para eventos do New Relic para todos os provedores (Azure/AWS/GCP). Se todos os hosts no ambiente forem descobertos usando Descoberta na nuvem, fornecendo credenciais e os recursos descobertos estiverem na lista cmdb_ci_vm_object, a vinculação da VM poderá não ocorrer. Para resolver isso, você deve habilitar a regra de eventoNew Relic - Geral. Para obter mais informações sobre regras de evento, consulteRegras de evento.