2014-04-30 13 views
5

La registrazione della traccia WCF sembra non funzionare in uno dei miei servizi wcf di windows. Ho usato questa stessa configurazione in altri servizi e ha funzionato in passato. Sono perplesso a questo punto. Ecco la configurazione che ho:Registrazione traccia WCF che non genera file di registro

<?xml version="1.0"?> 
<configuration> 
    <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> 
    </startup> 

    <system.diagnostics> 
    <sources> 
     <source name="System.ServiceModel.MessageLogging" 
       switchValue="Information, ActivityTracing"> 
     <listeners> 
      <add name="traceListener" 
       type="System.Diagnostics.XmlWriterTraceListener" 
       initializeData="C:\ProgramData\Bastian Software\Logs\ExactaManifest\Messages.svclog" /> 
     </listeners> 
     </source> 
     <source name="System.ServiceModel" 
       switchValue="Information, ActivityTracing"> 
     <listeners> 
      <add name="traceListener" 
       type="System.Diagnostics.XmlWriterTraceListener" 
       initializeData="C:\ProgramData\Bastian Software\Logs\ExactaManifest\WCF.svclog" /> 
     </listeners> 
     </source> 
    </sources> 

    <trace autoflush="true" /> 
    </system.diagnostics> 
    <system.serviceModel> 
    <diagnostics performanceCounters="All"> 
     <messageLogging 
     logMessagesAtTransportLevel="true" 
     logMessagesAtServiceLevel="false" 
     logMalformedMessages="true" 
     logEntireMessage="true" 
     maxSizeOfMessageToLog="2147483647" maxMessagesToLog="25000" /> 
    </diagnostics> 
    </system.serviceModel> 

</configuration> 

Non sembra essere un problema di autorizzazioni, perché ho creato manualmente una cartella e file con lo stesso utente che il servizio è in esecuzione. Anche io vedo il seguente nel Visualizzatore eventi relativo a questo la registrazione della traccia WCF:

enter image description here

Qualche suggerimento?

+1

Che errore non ti sta dando o come sai che non sta tracciando? – Greg

+0

@Greg I file svclog non vengono creati nei percorsi specificati nel file di configurazione. Ho iniziato il servizio e ho fatto diverse chiamate e non genera alcun svclog. –

+0

Hai più informazioni, quindi posso provare ad aiutarti? – Greg

risposta

10

I file di registro verranno creati solo se esiste già la directory specificata nella configurazione; è più che solo le autorizzazioni in atto per creare il file di registro. Vedere questa sezione di note da MSDN article:

I file di traccia non vengono creati senza creare inizialmente la directory di registro. Assicurarsi che la directory C: \ logs \ esista o specificare una directory di registrazione alternativa nella configurazione listener.

2

In base al tuo commento "non genera alcun svclog" mi porta a credere che il problema sia correlato alle tue autorizzazioni. Se si utilizza , Windows 8 Visual Studio dovrà essere aperto come amministratore. In caso contrario, non genererà alcun file di registro di traccia.

Alcuni altri elementi che si potrebbe verificare:

  • pool di applicazioni è in grado di lettura/scrittura alla directory del progetto (scheda Protezione).
  • Al servizio viene assegnato il pool di applicazioni appropriato per manipolare la directory del progetto.

Suppongo che sia ospitato tramite Internet Information System (IIS) o venga eseguito il debug tramite Visual Studio. Si spera che uno di questi due risolva il problema.

In Microsoft's Developer Network aggiungono effettivamente una nota importante sull'esecuzione come amministratore in Windows 8 a causa della frequenza con cui viene trascurata.

+0

In realtà non è ospitato in IIS. È un servizio Windows wcf net.tcp. In realtà sto usando Windows 8 ma la mia istanza di Visual Studio era in esecuzione in modalità amministratore. –

+0

Ho anche provato a eseguirlo come un'applicazione console con Visual Studio eseguito come amministratore con lo stesso risultato. No .svclogs con lo stesso messaggio sopra descritto nel visualizzatore eventi. –

+0

@ColeW Proverò a pensarci, immagino che inizierei semplice prima di diventare più complesso. – Greg

Problemi correlati