Je suis en train de réajuster une ancienne application vb.net pour la rendre conforme aux principes LUA de Vista. Jusqu'à présent, l'application utilisait un méli-mélo de mécanismes de journalisation, mais l'essentiel consistait à écrire un journal dans c: \ temp \ si le dossier existait. Je veux remplacer cette journalisation actuelle par un mécanisme de journalisation plus standard. Ceci étant VB, j'ai décidé d'essayer d'utiliser My.Application.Log
en conjonction avec app.config, et cela fonctionne aussi loin que possible (même si je ne m'attendais pas à ce qu'il vienne au profil itinérant). Malheureusement, les utilisateurs ont l'habitude de dépanner avec les informations du journal, ainsi que d'envoyer la connexion lorsqu'ils soumettent un bogue, et déplacer ce journal le cache plutôt bien.Comment puis-je déterminer par programme l'emplacement du journal d'application VB?
Ma pensée est de rendre le journal un peu plus accessible en ajoutant un lien vers elle, ou tout au moins dans le dossier qui le contient, dans l'interface utilisateur de l'application. Je ne sais pas comment déterminer où ce lien va pointer, cependant.
Modifier (info Add'l):
Mon fichier de configuration est plus ou moins la valeur par défaut intégré:
<system.diagnostics>
<sources>
<source name="Error Log" switchName="DefaultSwitch">
<listeners>
<add name="FileLog"/>
</listeners>
</source>
</sources>
<switches>
<add name="DefaultSwitch" value="Information" />
</switches>
<sharedListeners>
<add name="FileLog"
type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"
initializeData="FileLogWriter"/>
</sharedListeners>
</system.diagnostics>
J'aimerais mettre quelques-unes des propriétés sur le FileLogTraceListener en le fichier de configuration. MaxSize, par ex. (Il y avait un comportement max-size antérieur). Cependant, je ne vois aucune documentation qui appelle cela. (Il y a du contenu communautaire à la base du FileLogTraceListener page qui suggère que je devrais pouvoir le faire, alors je vais vérifier cela, mais je serais beaucoup plus à l'aise si je trouvais un support documenté pour cela.)
Si je fais ça, je devrais être en mesure de parcourir la trace collection d'auditeur sur My.Application.Log
et juste un lien au FullLogFileName de la première FileLogTraceListener.
Je préférerais m'en tenir à la solution plus VB-y dans VB, si c'est possible. –