# Guia Configuração do External Service Alert New Relic na Elven Platform

O **External Services Center** da **Elven Platform** é a ponte que conecta você às melhores ferramentas do mercado para monitorar, gerenciar e resolver incidentes de forma simples e eficiente. Nele é possível integrar o **New Relic** com a **Elven Platform**, permitindo o recebimento de alertas e eventos relacionados a incidentes diretamente na plataforma. Isso possibilita monitorar e analisar suas aplicações e serviços sob a perspectiva da Gestão de Incidentes, utilizando as melhores práticas e metodologias do mercado, tudo em um único lugar.&#x20;

{% embed url="<https://demo.elven.works/demo/cmd3gxuse031v130i7dgufu4t>" %}

## **API Token**

Para integrar a Elven Platform com o New Relic, precisamos criar um **API Token**. Essa chave única é indispensável para que as duas plataformas se conectem com segurança, garantindo a troca de informações confiável e autenticada. Basta acessar o **Organization Settings** da Elven Platform, navegar até a seção de API e gerar.

## **Criando um API Token**

* No menu superior na parte de configuração de seu usuário, clique em **Organization Settings**. &#x20;
* Na aba API, clique no botão **+** para criar um novo API Token.&#x20;

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FBmOYt83aMH4ET499SOdH%2Fextnewra01.png?alt=media&#x26;token=f20a9d60-86d3-42b9-b26a-b57b126ebaa9" alt=""><figcaption></figcaption></figure>

## **Acessando External Service Alert New Relic**

* Navegue até o menu principal e clique em **Services Hub**. &#x20;
* Em **External Services Monitoring**, selecione o item **Alert New Relic**.&#x20;

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FoolRniJTovOgSzEw6wLN%2Fextnewra02.png?alt=media&#x26;token=75466405-2e58-41e5-a073-8c0ca1c23c97" alt=""><figcaption></figcaption></figure>

## **Criando o External Services para Alert New Relic**

No formulário, comece preenchendo o campo **External Service Name**, que será o nome do serviço externo, e defina os **Responders**, ou seja, as pessoas ou equipes que receberão notificações relacionadas a este serviço. Após isso, clique em **CREATE** para prosseguir. Essa ação criará o registro inicial do seu serviço externo.

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FkvTtgBUCq9w7MF7mlOfS%2Fextnewra03.png?alt=media&#x26;token=afe219fa-bd0e-4f9e-a7e5-fe56377615ab" alt=""><figcaption></figcaption></figure>

Em seguida, localize o **API Token** que você gerou anteriormente e selecione-o para configurar a integração com o New Relic.

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FMLn4xzLBwsiAesvfZdmG%2Fextnewra04.png?alt=media&#x26;token=bc9d5372-a213-436a-8b4f-d4ab8451aab1" alt=""><figcaption></figcaption></figure>

## **Configurando Webhooks no New Relic**

Integrar o New Relic com a Elven Platform é um processo fácil e prático, pensado para otimizar o monitoramento e a gestão de incidentes. O primeiro passo é criar uma nova política de alertas no New Relic. Para isso, navegue até o menu **Alerts**, localizado à esquerda, e selecione a seção **Alert Policies**. Em seguida, clique no botão **Create Alert Conditions** para avançar no processo. Caso uma tela de informações seja exibida, simplesmente feche-a para prosseguir. Assim que a nova tela for aberta, localize o botão **+ New Alert Policy** e clique nele. Esse é o ponto de partida para configurar uma política de alertas de acordo com suas necessidades, garantindo um monitoramento eficiente e personalizado. Dê um nome para sua política.&#x20;

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FWIWHFQw7VxgugLi5awly%2Fextnewra05.jpeg?alt=media&#x26;token=90361396-4777-4f37-b7ac-4bb4fa93efa9" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FmaERXExutIPQ3DvtG2PN%2Fextnewra06.jpeg?alt=media&#x26;token=c646a420-d712-46b6-b094-40330f62d4d6" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FCqDZby2IN8iaJZ6ScMJq%2Fextnewra07.jpeg?alt=media&#x26;token=8ed60da0-1a93-4018-8da1-f531a74980a9" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FPbgORpakELuA93pzTLxx%2Fextnewra08.jpeg?alt=media&#x26;token=240aed28-65f2-4f7c-aea4-67caeb6ca526" alt=""><figcaption></figcaption></figure>

Ao criar uma nova política, opte por **One Issue per condition and signal**, garantindo que cada condição gere um alerta único. Finalize clicando em **Create policy without notifications**, simplificando a configuração inicial.&#x20;

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FY23s9GElqerYturKaJDG%2Fextnewra09.jpeg?alt=media&#x26;token=4334ffa6-cd8b-4031-9561-81ac46c4333d" alt=""><figcaption></figcaption></figure>

Em seguida, vá até o menu **Workflows** no painel à esquerda e clique em **+ Add a workflow**, localizado no canto superior direito. Dê um nome ao workflow, algo que facilite sua identificação futura, e vincule-o à política criada na etapa anterior. Na seção **Notify**, escolha **Webhook** e clique em **+ Add a destination**. Insira um nome descritivo no campo **Webhook name**, algo que represente bem a função desse ponto de contato, como “Elven Alert Integration”.

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FgQmLQaKtniyE1bRif8pt%2Fextnewra10.jpeg?alt=media&#x26;token=b26df74c-3983-4b46-a7e2-ef00b975c525" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FWROE59xIRuZn3BIbMwWy%2Fextnewra11.jpeg?alt=media&#x26;token=91260fba-e53c-46fe-a62c-ee28b3d08d17" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FIm5frd8iyog3tDtC1jX5%2Fextnewra12.jpeg?alt=media&#x26;token=4b51aad1-4e41-4305-bf8b-30816a534665" alt=""><figcaption></figcaption></figure>

Agora, insira as informações fornecidas pela Elven Platform. No campo **Endpoint URL**, preencha com a URL gerada ao criar o **External Service New Relic** na Elven Platform e clique em Save destination. Essa integração garante que os alertas sejam enviados diretamente à plataforma, centralizando informações críticas e agilizando a resposta a incidentes. É uma solução que alia simplicidade e eficiência, permitindo que você mantenha o foco na resolução de problemas e na melhoria contínua de seus serviços.&#x20;

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2FZ1AmeJqQpm8kWZ395H7G%2Fextnewra13.jpeg?alt=media&#x26;token=d58cd331-3d25-42fc-84f0-cef99746c36f" alt=""><figcaption></figcaption></figure>

Agora, insira o payload disponibilizado aqui na documentação para realizar um teste. Assim, você receberá um alerta de teste na **Elven Platform** e poderá verificar se tudo está funcionando corretamente.&#x20;

**Payload** **para teste**:

```
{ 
        "issueId": {{json issueId}},
        "issueTitle": {{json issueTitle}},
        "issueDescription": "{{accumulations.conditionDescription.[0] }}",
        "issueState": "open",
        "issueTime": "{{ createdAt }}",
        "severity": {{ json priority }}
        
      }
```

**Importante:** Leve em conta que o payload acima irá abrir um incidente na Elven Platform para efeito de testes, mas ainda assim ele permanecerá aberto na mesma até que seja marcado como resolvido. No dia a dia, você deve considerar que o atributo "**issueState**", além do valor "**open**", também pode ter os valores "**acknowledged**" e "**closed**", para respectivamente marcar o issue como reconhecido e fechado na Elven Platform.

Se o teste for bem-sucedido, basta substituir esse payload pelo que foi fornecido diretamente pela **Elven Platform**. Dessa forma, seus alertas estarão configurados corretamente e prontas para uso!

<figure><img src="https://1787513308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjv1RurNOS0w2Y9bpxizM%2Fuploads%2Fgejw9N7kavXUr5RmpeVh%2Fextnewra14.jpeg?alt=media&#x26;token=e8f37564-71e2-43b3-b1c6-700f02ea95dd" alt=""><figcaption></figcaption></figure>

Assim que configurado, o serviço aparecerá no External Services Monitoring Center, classificado por status, facilitando o monitoramento de incidentes com prioridade para aqueles em estado de alarme.

## **Configurações adicionais de segurança e performance**

* **Whitelist de IPs:** A comunicação via API pode ser configurada para permitir **apenas IPs autorizados**. Para ativar ou modificar essa configuração, entre em contato com o **suporte da Elven Platform**.
* **Rate Limiting:** O tempo padrão para limitação de requisições é **5 minutos**, mas pode ser ajustado conforme a necessidade. Para alterações, entre em contato com o **suporte da Elven Platform**.

Essas configurações garantem maior segurança e controle sobre o tráfego de dados entre os sistemas integrados.

## **Glossário de Termos Técnicos**

**API Token:** Uma chave única gerada para estabelecer a comunicação segura entre a Elven Platform e outras ferramentas, como o New Relic. Garante a troca de informações autenticada e confiável.&#x20;

**Alerts (New Relic):** Menu no painel do New Relic onde são criadas e gerenciadas políticas de alerta, permitindo configurar condições específicas que geram notificações baseadas em eventos monitorados.&#x20;

**Alert Conditions e Policies (New Relic):** Seção dentro de **Alerts** onde é possível criar novas políticas de alerta e definir condições específicas para a geração de incidentes e notificações.&#x20;

**One Issue per condition and signal:** Configuração que garante que cada condição de alerta no New Relic seja tratada como um evento único, evitando duplicações desnecessárias.&#x20;

**Create policy without notifications:** Opção para criar uma política de alertas sem configurar notificações iniciais, simplificando o processo de integração e permitindo ajustes posteriores.&#x20;

**Workflows (New Relic):** Menu do New Relic onde os fluxos de trabalho são criados para automatizar ações, como o envio de notificações baseadas nas políticas de alerta definidas.&#x20;

**Webhook:** Um ponto de integração que permite o envio de alertas e eventos em tempo real para sistemas externos, como a Elven Platform. Funciona como um canal de comunicação direta.&#x20;

**Webhook name:** Nome de identificação dado ao Webhook no New Relic para facilitar sua localização e entendimento em futuras configurações.&#x20;

**Endpoint URL:** Endereço gerado na Elven Platform ao criar o External Service para o New Relic. É usado para configurar o Webhook no New Relic e estabelecer a comunicação entre as duas plataformas.&#x20;

**External Services Center (Elven Platform):** Seção da Elven Platform que permite a integração com ferramentas externas, centralizando alertas e eventos para facilitar a gestão de incidentes.&#x20;

**Services Hub (Elven Platform):** Menu principal da Elven Platform onde estão listados e configurados os serviços externos integrados, como o New Relic.&#x20;

**External Service Name:** Nome dado ao serviço externo configurado na Elven Platform, utilizado para identificar facilmente a integração configurada.&#x20;

**Responders:** Usuários ou equipes definidos na Elven Platform para receberem notificações e gerenciarem incidentes relacionados ao serviço configurado.
