2015-04-15 22 views

risposta

1

non c'è un meccanismo attualmente per questo - la progettazione di uno sembra difficile

+0

Infatti, subito ciò che viene in mente è o un appositamente formattato (ma in ultima analisi, sarebbe una grande aggiunta al progetto!) messaggio, un sink di tipo intercettore (una funzione lambda?) che rende la chiamata finale o una sorta di oggetto aggiuntivo e probabilmente metaprograming. Forse un'opzione sarebbe un lambda opzionale, che verrebbe chiamato con un determinato sink (ad esempio l'interfaccia Log eventi) in modo che la chiamata venga effettuata "sul posto", o così apparirebbe nel codice. Solo qualcosa fuori di testa. Sembra che l'impulso nel nostro progetto possa essere soddisfatto con altri mezzi, ma sarebbe comunque una grande caratteristica! – Veksi

+0

Mi chiedevo se un hash del modello di messaggio ('" Foo {Bar} "') potesse essere usato per generare un ID evento (sufficiente) univoco? Quindi la produzione del file manifest giusto è la considerazione primaria ... Tuttavia non ho molta familiarità con questo aspetto del registro eventi. –

+0

In alcune situazioni funzionerebbe, ma non in tutto. Esistono numerosi strumenti di monitoraggio che leggono il registro eventi e si possono definire regole per l'occorrenza o il non verificarsi di ID specificati. Questo funzionerebbe se fosse giusto avere ID diversi, ma non facilmente se qualcuno volesse predefinire intervalli di ID con qualche significato. Attualmente il sink Serilog EL utilizza come ID il livello di gravità. Possiamo andare con quello e inserire l'ID evento nel messaggio stesso e fare una "regex" sulla stringa del messaggio. Non è l'ideale, ma funziona, poiché siamo interessati ai livelli Fatal e Error. – Veksi