2010-11-24 4 views
143

Mise à jour:Comment activer le suivi WCF?

Je suis en train de tourner sur le traçage WCF, mais toujours sans succès ... Voici ma lastest mise à jour.

Ai-je besoin d'une autorisation pour écrire à l'emplacement ci-dessous? Je utilise .NET Framework 3.5.

Quelle est l'instruction étape par étape pour activer le suivi WCF à des fins de débogage?

Répondre

208

La configuration suivante tirée de MSDN peut être appliquée pour activer le traçage sur votre service WCF.

<configuration> 
    <system.diagnostics> 
    <sources> 
     <source name="System.ServiceModel" 
       switchValue="Information, ActivityTracing" 
       propagateActivity="true" > 
     <listeners> 
      <add name="xml"/> 
     </listeners> 
     </source> 
     <source name="System.ServiceModel.MessageLogging"> 
     <listeners> 
      <add name="xml"/> 
     </listeners> 
     </source> 
     <source name="myUserTraceSource" 
       switchValue="Information, ActivityTracing"> 
     <listeners> 
      <add name="xml"/> 
     </listeners> 
     </source> 
    </sources> 
    <sharedListeners> 
     <add name="xml" 
      type="System.Diagnostics.XmlWriterTraceListener" 
      initializeData="Error.svclog" /> 
    </sharedListeners> 
    </system.diagnostics> 
</configuration> 

Pour afficher le fichier journal, vous pouvez utiliser "C: \ Program Files \ Microsoft SDKs \ Windows \ v7.0A \ bin \ SvcTraceViewer.exe".

Si "SvcTraceViewer.exe" est pas sur votre système, vous pouvez le télécharger à partir du "Microsoft Windows SDK pour Windows 7 et .NET Framework 4" package ici:

Windows SDK Download

Vous n » Je dois installer le tout, juste la partie ".NET Development/Tools".

Lorsque/si il bombarde lors de l'installation avec une erreur non-sensique, Petopas' answer to Windows 7 SDK Installation Failure a résolu mon problème.

+14

où est-ce que je vois que le fichier est généré 'Error.svclog'? –

+0

J'ai mis en place dans le web.config sur ma boîte de dev, mais je ne vois pas qu'il génère un fichier 'svclog' est-il un autre paramètre doit être pris en charge? –

+4

Le fichier sera généré dans le même répertoire que votre assembly. Très probablement votre répertoire bin. Vous devrez peut-être recycler le processus de travail si vos services sont hébergés dans IIS. –

28

Dans votre web.config (sur le serveur) ajouter

<system.diagnostics> 
<sources> 
    <source name="System.ServiceModel" switchValue="Information, ActivityTracing" propagateActivity="true"> 
    <listeners> 
    <add name="traceListener" type="System.Diagnostics.XmlWriterTraceListener" initializeData="C:\logs\Traces.svclog"/> 
    </listeners> 
    </source> 
</sources> 
</system.diagnostics> 
+1

J'ai ajouté comme ceci car je n'ai pas accès au dev sauf le dossier 'initializeData =" \\ nom de serveur \ lecteur $ \ Project \ WCFTraces.svclog "/>' et je ne vois pas ce fichier est généré après que j'essaie d'accéder aux services. –

+5

Par défaut, il est tamponné (peut être en mesure de changer cela). Vous pouvez le forcer à vider en recyclant le pool d'applications. Assurez-vous également que l'identité du pool d'applications peut écrire sur l'emplacement. –

12

Accédez à votre répertoire Microsoft SDKs. Un chemin comme ceci:

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools 

Ouvrez l'éditeur de configuration WCF (service Microsoft éditeur de configuration) de ce répertoire:

SvcConfigEditor.exe 

(une autre option pour ouvrir cet outil est en naviguant dans Visual Studio 2017 "Outils"> "service WCF éditeur de configuration")

wcf configuration editor

Ouvrez votre .config fichier ou en créer un nouveau en utilisant l'éditeur et accédez à Diagnostics.

Vous pouvez cliquer sur "Activer MessageLogging".

enable messagelogging

Plus d'info: https://msdn.microsoft.com/en-us/library/ms732009(v=vs.110).aspx

Avec la visionneuse de trace dans le même répertoire que vous pouvez ouvrir les fichiers journaux de traces:

SvcTraceViewer.exe 

Vous pouvez également activer le traçage en utilisant WMI. Plus d'infos: https://msdn.microsoft.com/en-us/library/ms730064(v=vs.110).aspx

+1

vous remercie beaucoup de m'avoir présenté à cet utilitaire GUI.Il va rendre l'édition des fichiers de configuration beaucoup plus facile! – symbiont

Questions connexes