.Net WCF Service de Journal de suivi avec le fichier journal de gestion (Roulement)

J'ai quelques .Net des services WCF, pour ces services, j'ai configuré l'application.fichier de configuration pour consigner les messages envoyés et reçus dans un .svclog fichier lisible par "Visionneuse de Trace de Service de l'Outil" (SvcTraceViewer.exe) . Cet outil rend les fichiers journaux joliment montrant clairement les messages SOAP en cours de traitement.

- Je utiliser le Système.Diagnostics.XmlWriterTraceListener auditeur pour formater correctement la .svclog fichier à être lues par le Service de la Visionneuse de Trace de l'Outil.

Le problème que j'ai, c'est que l' .svclog fichier devient trop grand & la Visionneuse de Trace de Service de l'Outil devient inutilisable en raison de la lenteur des temps de réponse.

La Visionneuse de Trace de Service de l'Outil permet de fournir une installation pour permettre à une partie du fichier journal doit être ouvert si le fichier > 40 MO en taille, mais c'est encore trop lent. Il semble y avoir aucun moyen de dans l'app.fichier de configuration pour configurer l' .svclog pour créer automatiquement un nouveau fichier chaque jour ou quand le fichier est à une certaine taille.

Il y a un texte de journal auditeur appelé Microsoft.VisualBasic.La journalisation.FileLogTraceListener qui prend en charge un logfilecreationschedule="Quotidien" de la propriété qui roule le fichier journal quotidien, cependant le fichier journal à partir de cet écouteur est difficile pour une opération de soutien à utiliser les entrées de journal ne sont pas bien rendus et les grands docs xml contribuer à la confusion.

Quelle est la meilleure pratique dans ce domaine, il semble que j'ai peut-être écrire une coutume WCF extension du journal qui semble exagéré pour traiter l'absence d'un fichier journal de rouleau fonction dans le construit dans le Système.Diagnostics.XmlWriterTraceListener journal auditeur /appender.

J'ai également expérimenté avec un script pour arrêter ma demande et renommer les fichiers journaux mais cela ne semble pas être possible parce que sous Windows, l'handle.exe et openfile les services publics sont incapables de fermer un fichier ouvert sur un partage réseau donc je ne peux pas renommer /déplacer l'ancien fichier journal si quelqu'un est en train de naviguer sur un partage réseau. Vais poster une autre question à ce sujet sous peu.

Grâce,
Matt.

  • Si c'est faisable, vous ne sont pas censés avoir de la WCF suivi activé tout le temps. Il est conçu comme un dépannage approche, et a de l'impact sur les performances. Le désactiver dans l'environnement de production est une meilleure pratique.
InformationsquelleAutor MattG | 2012-05-28