Você pode enviar seu log do Amazon CloudWatch para New Relic usando nossa função AWS do Lambda, newrelic-log-ingestion
. Isso pode ser facilmente implantado no repositório do aplicativo AWS Serverless.
Encaminhar seu log do CloudWatch para New Relic proporcionará recursos aprimorados para coletar, processar, explorar, consultar e alertar sobre seus dados log .
Instalar e configurar a função de log do CloudWatch do Lambda
A configuração a seguir mostra uma abordagem para configurar variáveis de ambiente. Você também pode configurá-los na página Funções .
Complete o seguinte:
Certifique-se de ter um .
Abra o repositório do aplicativo AWS Serverless em seu Browser.
Procure por
newrelic
e marque Show apps that create custom IAM roles or resource policies para encontrarnewrelic-log-ingestion
.Abra os detalhes
newrelic-log-ingestion
e clique em Deploy.No menu Configure da função, acesse Environment Variables e configure o encaminhamento de logs usando as seguintes variáveis de ambiente:
Chave
Descrição
DEBUG_LOGGING_ENABLED
Um booleano para determinar se você deseja gerar mensagens de depuração no console do CloudWatch. Opcional.
Para ativar o log de depuração, defina-o como
true
. O padrão éfalse
.LICENSE_KEY
é usado para enviar dados para o New Relic. Obrigatório.
LOGGING_ENABLED
Determina se os logs serão encaminhados para New Relic. Obrigatório. Para ativar a geração de registros, defina como
true
.NR_TAGS
Especifique a tag a ser adicionada a todos os eventos de log. Opcional.
Cada tag é composta por uma chave e um valor delimitados por dois pontos. Vários pares de valores principais são delimitados por ponto e vírgula; por exemplo,
env:prod;team:myTeam
.NR_LAMBDA_LOG_GROUP_PREFIX
Se você configurou seu grupo log do Lambda para usar um caminho diferente de
/aws/lambda
, poderá especificá-lo com esta variável. Opcional.NR_VPC_LOG_GROUP_PREFIX
Se você configurou seu grupo log de VPC para usar um caminho diferente de
/aws/vpc/flow-log
, poderá especificá-lo com esta variável. Opcional.Reconheça que o aplicativo cria funções personalizadas do IAM e clique em Deploy.
Assim que o processo for concluído, crie um gatilho Lambda para vincular sua função do Lambda ao log do CloudWatch.
Crie um gatilho Lambda
Certifique-se de configurar um gatilho, e não uma assinatura de log, na função de ingestão. Se uma assinatura fosse configurada no console do Lambda, isso poderia levar a uma cascata de logs gerados e encaminhados para a New Relic.
Para fazer o streaming do seu log para o New Relic, anexe um gatilho ao Lambda:
No menu do lado esquerdo, selecione
Functions
.
Encontre e selecione a função
newrelic-log-ingestion
criada anteriormente.Em
Triggers
, clique em
Add Triggers
e selecione
CloudWatch Logs
no dropdown.
Selecione o
Log group
apropriado para seu aplicativo.
Insira um nome para o seu filtro.
Opcional: insira um padrão de filtro.
Marque a caixa de seleção
Enable trigger
e clique em
Add
para criar o gatilho.
Este documento ajudou você na instalação?
Opcional: configurar um endpoint de criação de log diferente
Você pode definir um endpoint de registro personalizado, se necessário. Isso permitirá, por exemplo, usar nosso endpoint compatível com FedRAMP.
Para isso, você deve implantar o aplicativo explicado acima e então:
Vá para a função recentemente implantada do Lambda view na AWS.
Role para baixo e clique na guia
Configuration
.
No menu esquerdo da guia
Configuration
, clique em
Environment Variables
.
Aqui você pode ver uma lista das variáveis de ambiente já existentes, basta clicar em
Edit
no canto superior direito da tabela
Environment Variables
.
Atualize
NR_LOGGING_ENDPOINT
com o endpoint apropriado:- Para EUA:
https://log-api.newrelic.com/log/v1
- Para a UE:
https://log-api.eu.newrelic.com/log/v1
- Para FedRAMP:
https://gov-log-api.newrelic.com/log/v1
- Para EUA:
Clique em
Save
.
Opcional: configurar novas tentativas
Você pode configurar o número de tentativas que deseja realizar caso a função falhe no envio dos dados em caso de problemas de comunicação. O número recomendado é de três tentativas, mas você pode alterar o comportamento de novas tentativas alterando o parâmetro abaixo:
Dica
Quanto maior o número de tentativas, a função pode ser executada por mais tempo. Isso aumenta a probabilidade de custos mais elevados para o Lambda. No entanto, diminuir o número de novas tentativas pode aumentar a probabilidade de perda de dados.
MAX_RETRIES = 3 # Defines the number of retries after lambda failure to deliver dataINITIAL_BACKOFF = 1 # Defines the initial wait seconds until next retry is executedBACKOFF_MULTIPLIER = 2 # Time multiplier between the retriesAs an example, in default above configuration, first retry will happen after 1 second, second retry after 2 seconds and third retry will happen after 4 seconds.
Recursos criados pelo modelo SAM
Ao criar o aplicativo a partir do repositório, os seguintes recursos também são criados:
- A própria função do Lambda
- Uma função usada para conceder permissões de execução à função do Lambda com base no log do CloudWatch.
Todas as outras configurações do Lambda não listadas podem ser deixadas como padrão.
Ver dados log
Se tudo estiver configurado corretamente e seus dados estiverem sendo coletados, você deverá ver os dados de log em ambos os locais:
- Nossa interface de registros
- New Relic para execução de consultaNRQL . Por exemplo, você pode executar uma consulta como esta:
SELECT * FROM Log
Se nenhum dado aparecer após você ativar nossos recursos de gerenciamento de logs, siga nossos procedimentos padrão de resolução de problemas de log.
Qual é o próximo?
Explore os dados de registro em sua plataforma.
- Obtenha visibilidade mais profunda dos dados de desempenho do seu aplicativo e da sua plataforma encaminhando seu log com nossos recursos logs contextualizados .
- Configure o alerta.
- consulte seus dados e crie dashboard.
Desativar encaminhamento de logs
Para desativar os recursos de encaminhamento de logs, siga os procedimentos padrão na documentação do Amazon CloudWatch. Você não precisa fazer mais nada no New Relic.