As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Configure o registro para. NETaplicativos no Amazon CloudWatch Logs usando NLog
Criado por Bibhuti Sahu (AWS) e Rob Hill () () AWS AWS
Ambiente: produção | Tecnologias: Gestão e governança DevOps;; Aplicativos web e móveis | Workload: Microsoft |
AWSserviços: Amazon CloudWatch Logs |
Resumo
Esse padrão descreve como usar a estrutura de registro NLog de código aberto para registrar. NETuso de aplicativos e eventos no Amazon CloudWatch Logs. No CloudWatch console, você pode ver as mensagens de log do aplicativo quase em tempo real. Você também pode configurar métricas e configurar alarmes para notificá-lo se um limite métrico for excedido. Usando o CloudWatch Application Insights, você pode visualizar painéis automatizados ou personalizados que mostram possíveis problemas para os aplicativos monitorados. CloudWatch O Application Insights foi projetado para ajudá-lo a isolar rapidamente os problemas contínuos com seus aplicativos e infraestrutura.
Para gravar mensagens de registro no CloudWatch Logs, você adiciona o AWS.Logger.NLog
NuGet pacote ao. NETprojeto. Em seguida, você atualiza o NLog.config
arquivo para usar o CloudWatch Logs como destino.
Pré-requisitos e limitações
Pré-requisitos
Uma conta da AWS ativa.
UMA. NETaplicativo web ou de console que:
Usos suportados. NETEstrutura ou. NETVersões principais. Para obter mais informações, consulte Versões de produto.
Usa NLog para enviar dados de log para o Application Insights.
Permissões para criar uma IAM função para um AWS serviço. Para obter mais informações, consulte Permissões de perfil de serviço.
Permissões para passar uma função para um AWS serviço. Para obter mais informações, consulte Conceder permissões a um usuário para passar uma função para um AWS serviço.
Versões do produto
. NETFramework versão 3.5 ou posterior
. NETVersões principais 1.0.1, 2.0.0 ou posteriores
Arquitetura
Pilha de tecnologias de destino
NLog
CloudWatch Registros da Amazon
Arquitetura de destino
A. NETaplicativo grava dados de log na estrutura de NLog registro.
NLoggrava os dados de registro em CloudWatch Logs.
Você usa CloudWatch alarmes e painéis personalizados para monitorar o. NETaplicativo.
Ferramentas
AWSserviços
O Amazon CloudWatch Application Insights ajuda você a observar a integridade de seus aplicativos e AWS recursos subjacentes.
O Amazon CloudWatch Logs ajuda você a centralizar os registros de todos os seus sistemas, aplicativos e AWS serviços para que você possa monitorá-los e arquivá-los com segurança.
AWSO Identity and Access Management (IAM) ajuda você a gerenciar com segurança o acesso aos seus AWS recursos controlando quem está autenticado e autorizado a usá-los.
AWSAs ferramentas para PowerShell são um conjunto de PowerShell módulos que ajudam você a criar scripts de operações em seus AWS recursos a partir da linha de PowerShell comando.
Outras ferramentas
Lenhador. NLog
é um NLog destino que registra dados de registro no CloudWatch Logs. NLog
é uma estrutura de registro de código aberto para. NETplataformas que ajudam você a gravar dados de log em destinos, como bancos de dados, arquivos de log ou consoles. PowerShell
é um programa de gerenciamento de automação e configuração da Microsoft executado em Windows, Linux e macOS. O Visual Studio
é um ambiente de desenvolvimento integrado (IDE) que inclui compiladores, ferramentas de conclusão de código, designers gráficos e outros recursos que oferecem suporte ao desenvolvimento de software.
Práticas recomendadas
Defina uma política de retenção para o grupo de logs de destino. Isso deve ser feito fora da NLog configuração. Por padrão, os dados de registro são armazenados em CloudWatch Registros indefinidamente.
Siga as melhores práticas para gerenciar chaves de AWS acesso.
Épicos
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Crie uma IAM política. | Siga as instruções em Criação de políticas usando o JSON editor na IAM documentação. Insira a JSON política a seguir, que tem as permissões de privilégio mínimo necessárias para permitir que CloudWatch os registros leiam e gravem registros.
| AWSadministrador, AWS DevOps |
Crie uma IAM função. | Siga as instruções em Criação de uma função para delegar permissões a um AWS serviço na IAM documentação. Selecione a política que você criou anteriormente. Essa é a função que CloudWatch Logs assume para realizar ações de registro. | AWSadministrador, AWS DevOps |
Configure AWS ferramentas para PowerShell. |
| Geral AWS |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Instale o NuGet pacote. |
| Desenvolvedor de aplicativos |
Configurar o destino de registro em log. |
Para obter um exemplo de arquivo de configuração, consulte a seção Informações adicionais deste padrão. Quando você executar seu aplicativo, NLog gravará as mensagens de log e as enviará para o CloudWatch Logs. | Desenvolvedor de aplicativos |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Validar o registro em log. | Siga as instruções em Exibir dados de registro enviados para CloudWatch Registros na documentação de CloudWatch Registros. Valide se os eventos de log estão sendo registrados para o. NETaplicativo. Se os eventos de log não estiverem sendo registrados, consulte a seção Solução de problemas nesse padrão. | Geral AWS |
Monitore o. NETpilha de aplicativos. | Configure o monitoramento CloudWatch conforme necessário para seu caso de uso. Você pode usar o CloudWatch Logs Insights, o CloudWatch Metrics Insights e o CloudWatch Application Insights para monitorar seu. NETcarga horária. Você também pode configurar alarmes para receber alertas e criar um painel personalizado para monitorar a workload a partir de uma única visualização. | Geral AWS |
Solução de problemas
Problema | Solução |
---|---|
Os dados do registro não aparecem nos CloudWatch registros. | Verifique se a IAM política está vinculada à IAM função que o CloudWatch Logs assume. Para obter instruções, consulte a seção Configurar acesso e ferramentas na seção Épicos. |
Recursos relacionados
Trabalhando com grupos e fluxos de CloudWatch registros (documentação de registros)
Amazon CloudWatch Logs e. NETEstruturas de registro
(publicação AWS no blog)
Mais informações
Veja a seguir um exemplo de arquivo NLog.config
.
<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog" /> </configSections> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /> </startup> <nlog> <extensions> <add assembly="NLog.AWS.Logger" /> </extensions> <targets> <target name="aws" type="AWSTarget" logGroup="NLog.TestGroup" region="us-east-1" profile="demo"/> </targets> <rules> <logger name="*" minlevel="Info" writeTo="aws" /> </rules> </nlog> </configuration>