Configura la registrazione per. NETapplicazioni in Amazon CloudWatch Logs utilizzando NLog - Prontuario AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configura la registrazione per. NETapplicazioni in Amazon CloudWatch Logs utilizzando NLog

Creato da Bibhuti Sahu (AWS) e Rob Hill () () AWS AWS

Riepilogo

Questo modello descrive come utilizzare il framework di registrazione NLog open source per la registrazione. NETutilizzo delle applicazioni ed eventi in Amazon CloudWatch Logs. Nella CloudWatch console, puoi visualizzare i messaggi di log dell'applicazione quasi in tempo reale. Puoi anche impostare metriche e configurare allarmi per avvisarti se viene superata una soglia metrica. Utilizzando CloudWatch Application Insights, è possibile visualizzare dashboard automatiche o personalizzate che mostrano potenziali problemi per le applicazioni monitorate. CloudWatch Application Insights è progettato per aiutarvi a isolare rapidamente i problemi in corso con le applicazioni e l'infrastruttura.

Per scrivere messaggi di log in CloudWatch Logs, aggiungi il AWS.Logger.NLog NuGet pacchetto a. NETprogetto. Quindi, aggiorni il NLog.config file per utilizzare CloudWatch Logs come destinazione.

Prerequisiti e limitazioni

Prerequisiti

Versioni del prodotto

  • . NETFramework versione 3.5 o successiva

  • . NETVersioni principali 1.0.1, 2.0.0 o successive

Architettura

Stack tecnologico Target

  • NLog

  • CloudWatch Registri Amazon

Architettura Target

Diagramma di architettura della NLog scrittura dei dati di registro per un. NETapplicazione per Amazon ClodWatch Logs.
  1. Il. NETl'applicazione scrive i dati di registro nel framework NLog di registrazione.

  2. NLogscrive i dati di registro in CloudWatch Logs.

  3. Si utilizzano CloudWatch allarmi e dashboard personalizzati per monitorare il. NETapplicazione.

Strumenti

Servizi AWS

Altri strumenti

  • Logger. NLogè una NLog destinazione che registra i dati di registro in CloudWatch Logs.

  • NLogè un framework di registrazione open source per. NETpiattaforme che consentono di scrivere dati di registro su destinazioni, come database, file di registro o console.

  • PowerShellè un programma di gestione dell'automazione e della configurazione di Microsoft che funziona su Windows, Linux e macOS.

  • Visual Studio è un ambiente di sviluppo integrato (IDE) che include compilatori, strumenti di completamento del codice, progettisti grafici e altre funzionalità che supportano lo sviluppo del software.

Best practice

  • Imposta una politica di conservazione per il gruppo di log di destinazione. Questa operazione deve essere eseguita al di fuori della NLog configurazione. Per impostazione predefinita, i dati di registro vengono archiviati nei CloudWatch registri a tempo indeterminato.

  • Rispetta le migliori pratiche per la gestione AWS delle chiavi di accesso.

Epiche

AttivitàDescrizioneCompetenze richieste

Creare una policy IAM.

Segui le istruzioni in Creazione di politiche utilizzando l'JSONeditor nella IAM documentazione. Immettete la seguente JSON politica, che dispone dei privilegi minimi necessari per consentire a Logs di leggere e scrivere CloudWatch i log.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:GetLogEvents", "logs:PutLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:PutRetentionPolicy" ], "Resource": [ "*" ] } ] }
AWSamministratore, AWS DevOps

Creare un ruolo IAM.

Segui le istruzioni riportate nella documentazione in Creazione di un ruolo per delegare le autorizzazioni a un AWS servizio. IAM Seleziona la politica che hai creato in precedenza. Questo è il ruolo che CloudWatch Logs assume per eseguire le azioni di registrazione.

AWSamministratore, AWS DevOps

Configura AWS gli strumenti per PowerShell.

  1. Segui le istruzioni relative al tuo sistema operativo in Installazione degli AWS strumenti per PowerShell.

  2. Utilizzare gli AWS strumenti per i PowerShell cmdlet per archiviare la chiave di accesso e la chiave segreta in un profilo. Per istruzioni, vedere Gestione dei profili negli AWS Strumenti per PowerShell la documentazione.

Informazioni generali AWS
AttivitàDescrizioneCompetenze richieste

Installa il NuGet pacchetto.

  1. In Visual Studio, scegli File, quindi scegli Apri un progetto o una soluzione.

  2. Scegli il progetto in cui desideri installarloNLog.

  3. In Visual Studio, scegli Tools, NuGet Package Manager, Package Manager Console.

  4. Installa il AWS.Logger.NLog NuGet pacchetto inserendo il seguente comando.

    Install-Package AWS.Logger.NLog -Version 3.1.0
Sviluppatore di app

Configura la destinazione di registrazione.

  1. Apri il file NLog.config.

  2. Per il bersagliotype, inserisciAWSTarget.

  3. Per la destinazionelogGroup, inserisci il nome del gruppo di log che desideri utilizzare. Se il gruppo di log non esiste già, viene creato automaticamente un nuovo gruppo di log con il nome fornito.

  4. Per la destinazioneregion, inserisci la AWS regione in cui è configurato CloudWatch Logs.

  5. Per la destinazioneprofile, inserisci il nome del profilo che hai creato in precedenza per archiviare la chiave di accesso e la chiave segreta.

  6. Salvare e chiudere il file NLog.config.

Per un file di configurazione di esempio, consultate la sezione Informazioni aggiuntive di questo modello. Quando esegui l'applicazione, NLog scriverà i messaggi di registro e li invierà a CloudWatch Logs.

Sviluppatore di app
AttivitàDescrizioneCompetenze richieste

Convalida la registrazione.

Segui le istruzioni in Visualizza i dati di registro inviati ai CloudWatch registri nella documentazione dei registri. CloudWatch Verifica che gli eventi di registro vengano registrati per. NETapplicazione. Se gli eventi di registro non vengono registrati, consultate la sezione Risoluzione dei problemi in questo schema.

Generale AWS

Monitora il. NETstack di applicazioni.

Configura il monitoraggio in base CloudWatch alle esigenze del tuo caso d'uso. Puoi utilizzare CloudWatch Logs Insights, CloudWatch Metrics Insights e CloudWatch Application Insights per monitorare i tuoi. NETcarico di lavoro. È inoltre possibile configurare gli allarmi in modo da ricevere avvisi e creare una dashboard personalizzata per monitorare il carico di lavoro da un'unica visualizzazione.

Generale AWS

Risoluzione dei problemi

ProblemaSoluzione

I dati di registro non vengono visualizzati nei CloudWatch registri.

Assicurati che la IAM policy sia associata al IAM ruolo assunto da CloudWatch Logs. Per istruzioni, consulta la sezione Configurazione dell'accesso e degli strumenti nella sezione Epics.

Risorse correlate

Informazioni aggiuntive

Di seguito è riportato un file di esempio. 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>