Introduzione

“App Logging” è un framework di logging che consente di emettere informazioni di logging e debug a più destinazioni. Questi log possono essere suddivisi in categorie e possono essere configurati per ogni app e categoria e anche per ogni utente e dove i log devono essere emessi. Attualmente sono supportate le seguenti destinazioni di log:

Utilizzare questo logger è davvero semplice. È sufficiente seguire i seguenti passaggi:

  1. Dichiarare una variabile per codeunit 70623694 EOS004 App Logger.
  2. Inizializzare la codeunit utilizzando Initialize o InitializeForCaller.
  3. Emettere messaggi di log usando i metodi LogMessage. Sono molto simili a quelli usati da Session.LogMessage e quindi non dovrebbero dare molti problemi.

Si può trovare un esempio più dettagliato su https://github.com/EOS-Solutions/Sample/tree/master/EX004.EosAdminLib/Logging.

Application Insights (Default)

È essenzialmente la stessa cosa che usare Session.LogMessage. I log saranno inviati all’account Application Insights definito nell’applicazione e/o nel servizio. Il vantaggio di usare il framework App Logging invece di chiamare direttamente Session.LogMessage è che questo fa parte del framework “App Logging” e quindi questi messaggi di log sono ora configurabili per utente/app/categoria. Questo logger non bufferizza i messaggi e quindi non richiede flushing.

Application Insights (Custom)

È simile ad Application Insights (Default), ma consente di emettere messaggi di log a un account Application Insights arbitrario e non è limitato a quelli definiti nell’app/servizio. Questo logger bufferizza i messaggi e quindi richiede il flushing per inviarli.

Internal

Si tratta di un logger che registra i messaggi in una tabella temporanea globale, che rimane in vita finché dura la sessione dell’utente. È possibile utilizzare codeunit 70623696 EOS004 Internal Logger per accedere ai log raccolti ed esportarli o conservarli in qualsiasi modo. Questo logger non bufferizza i messaggi e quindi non richiede flushing.

Setup

L’impostazione di “App Logging” si trova alla pagina Setup log app (EAL).


Qui è possibile vedere un elenco di tutti i logger attualmente attivi e configurati.

  • Nome app indica l’applicazione per questa configurazione di logger.
  • Nome specifica la categoria per questa configurazione di logger.
  • Username specifica l’utente per il quale questa configurazione di logger è attiva. Può essere un singolo utente o tutti gli utenti.
  • Enabled specifica se la configurazione è attualmente abilitata.
  • Enabled From / Enabled to specifica l’intervallo di data/ora in cui il logger sarà abilitato. Se non viene specificato, il logger è sempre attivo. Oltre a questo intervallo di date/ore, deve essere attivo anche il flag Abilitato.
  • Logger specifica il logger su cui questa configurazione scriverà i suoi messaggi di log.
  • Service Config. Code specifica la configurazione del servizio da utilizzare per il logger specificato in Logger. Potrebbe non essere necessario e dipende dal logger selezionato in Logger come e cosa deve essere selezionato qui. Al momento, solo Application Insights (Custom) richiede una configurazione di servizio. Per saperne di più, consultare Configurazioni del servizio.
  • Diagnostics Key è una chiave generata in modo casuale che viene inviata insieme a tutti i messaggi di log scritti per questa configurazione. Aiuta a identificare la configurazione quando si analizzano i log.

Con l’azione Nuovo è possibile creare una nuova configurazione.


I seguenti campi sono obbligatori:

  • Id app specifica l’applicazione per la quale creare una configurazione di logger. In questo elenco verranno visualizzate solo le app che hanno sottoscritto l’evento OnCollectLogCategories e che hanno fornito almeno una categoria di log. Controllare l’esempio su GitHub per i dettagli su come implementarlo.
  • Nome app mostra il nome dell’applicazione selezionata.
  • Categoria permette di scegliere la categoria di log per la quale si vuole creare la configurazione. I valori disponibili sono quelli forniti dall’applicazione tramite OnCollectLogCategories.
  • Abilitato per permette di scegliere se la configurazione deve essere valida per tutti gli utenti, per l’utente attualmente connesso o solo per un utente specifico.
  • Username consente di scegliere l’utente per il quale si desidera configurare questo registro, se si è selezionato Utente specifico in Abilitato per.

EOS Labs -