OpenLab Studio | >= 0.13.x |
OpenLab SDK | >= 0.16.x |
Linguaggi | C# |
Generale #
Durante l’avvio OpenLab Studio usa un logger base che salva tutti i messaggi in una stringa. Completato l’avvio viene utilizzato un altro logger più avanzato, LoggerStandard
.
Questo logger fornisce i metodi standard per l’invio di messaggi come per il log base ma permette anche di gestire la sintassi dei messaggi e scrivere poi i messaggi in diverse destinazioni tramite i LoggerStorage
Logger Storage #
Una volta inviato il messaggio, il log, lo passa ad una lista di istanze di LoggerStorage
. Ogni logger storage implementa una destinazione per il messaggio del log, ad esempio una stringa o un file o un database, etc. E’ possibile implementare il proprio logger storage ed agganciarlo al log nel file di configurazione di OpenLab Studio.
Di default il logger usa un buffer in memoria come storage, questo logger storage viene inserito di default e non può essere rimosso, anche perché viene utilizzato dal metodo getMessages()
per restituire tutti i messaggi.
In un plugin possono essere implementati più logger storage, va creata una definizione per ognuno di loro nel file di configurazione di OpenLab Studio. La definizione è un oggetto json nell’array storages
, dell’oggetto logger
. Come per i plugin la parte di configurazione specifica per un logger storage, l’oggetto config
, può essere posizionato in un file esterno tramite la proprietà path
.
Vedere la guida Implementare un logger storage
Logger Storage error #
Nel caso durante la scrittura/lettura da parte di un logger storage, avvenga un errore, viene lanciata un eccezzione OLSException
non bloccante, questa provoca la disattivazione di tutti i logger storage e disabilita lo svuotamento del buffer. Da quel momento in poi tutti i messaggi successivi vengono memorizzati in modo permanente nel buffer in modo che possano comunque essere recuperati, ma non verrà chiamato nessun logger storage.
Configurazione #
La configurazione del logger viene fatta tramite le proprietà dell’oggetto json logger
nel file di configurazione di OpenLab Studio. Di seguito l’elenco delle proprietà:
enabled | bool | Abilita/disabilita il log standard, verrà usato quello base creato all’avvio di OpenLab Studio.
E’ opzionale, di default è true |
loadStoragesOnStart | bool | Abilita/disabilita lil caricamento dei logger storage.
E’ opzionale, di default è true |
storages | array | Array delle definizioni dei logger storage.
E’ opzionale, può essere vuoto |
Logger storage #
Le proprietà standard di un logger storage sono le seguenti:
enabled | bool | Abilita/disabilita il caricamento di un logger storage
E’ opzionale, di default è true |
path | string | Indica il file dll da caricare che contiene la classe per il logger storage derivata dalla classe LoggerStorage
E’ obbligatorio |
config | oggetto | Contiene la configurazione specifica del logger storage. Questo oggetto verrà passato cosi comè all’istanza della classe del logger storage.
E’ opzionale e può essere vuoto |
config/path | string | Contiene il path del file json da cui leggere la configurazione specifica del logger storage, come per l’oggetto config.
E’ opzionale |