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
Un account AWS attivo.
A. NETapplicazione web o console che:
Usi supportati. NET Framework o. NET Versioni principali. Per ulteriori informazioni, consulta Versioni del prodotto.
Viene utilizzato NLog per inviare dati di registro ad Application Insights.
Autorizzazioni per creare un IAM ruolo per un AWS servizio. Per ulteriori informazioni, consulta Autorizzazioni per i ruoli di servizio.
Autorizzazioni per trasferire un ruolo a un AWS servizio. Per ulteriori informazioni, consulta Concessione di autorizzazioni utente per il passaggio di un ruolo a un servizio AWS.
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.](images/pattern-img/0ac9c3ad-2a28-415f-afc3-7fe3494b2b63/images/daea9f2f-7242-4ed2-843e-655d843dcfdf.png)
Il. NETl'applicazione scrive i dati di registro nel framework NLog di registrazione.
NLogscrive i dati di registro in CloudWatch Logs.
Si utilizzano CloudWatch allarmi e dashboard personalizzati per monitorare il. NETapplicazione.
Strumenti
Servizi AWS
Amazon CloudWatch Application Insights ti aiuta a monitorare lo stato delle tue applicazioni e AWS delle risorse sottostanti.
Amazon CloudWatch Logs ti aiuta a centralizzare i log di tutti i tuoi sistemi, applicazioni e AWS servizi in modo da poterli monitorare e archiviare in modo sicuro.
AWSIdentity and Access Management (IAM) consente di gestire in modo sicuro l'accesso alle AWS risorse controllando chi è autenticato e autorizzato a utilizzarle.
AWSGli strumenti per PowerShell sono un insieme di PowerShell moduli che consentono di eseguire operazioni di script sulle AWS risorse dalla PowerShell riga di comando.
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à | Descrizione | Competenze 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.
| 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. |
| Informazioni generali AWS |
Attività | Descrizione | Competenze richieste |
---|---|---|
Installa il NuGet pacchetto. |
| Sviluppatore di app |
Configura la destinazione di registrazione. |
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à | Descrizione | Competenze 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
Problema | Soluzione |
---|---|
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
Lavorare con gruppi di log e flussi di log (documentazione relativa ai CloudWatch log)
Amazon CloudWatch Logs e. NET Logging Frameworks (post sul blog
) AWS
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>