Exception déstructuration dans Serilog

Serilog a un moyen pratique de déstructuration des objets comme indiqué dans cet exemple:

logger.Debug(exception, "This is an {Exception} text", exception);
logger.Debug(exception, "This is an {@Exception} structure", exception);

La première ligne de causes de l'enregistreur de journal d'une exception en tant que texte brut (en faisant appel à ToString()), et la deuxième ligne de causes de l'enregistreur à l'exception d'écriture propriétés des champs distincts. Mais que penser de cette surcharge:

logger.Debug(exception, "This is an exception", exception);

Celle-ci prend une exception comme premier argument, et il est toujours écrit comme une chaîne de caractères. Ce que je voudrais faire est d'activer la journalisation de l'exception, de façon structurée. Il est possible de configurer Serilog pour y parvenir?

Mise à JOUR. Je pense que cette question conduit à un autre aspect de l'exploitation forestière exceptions: comment puis-je m'assurer que les messages sont enrichies avec des propriétés d'exception (de sorte qu'ils sont enregistrés de manière structurée dans le riche éviers comme Elasticsearch), sans écrire de toutes les propriétés d'exception pour le rendu du texte de message (donc, le texte brut enregistreurs ne sont pas remplis avec des énormes tas de détails de l'exception).

OriginalL'auteur Vagif Abilov | 2014-08-15