2012-01-06 9 views
2

サーバー上のWCFサービスのトレースログファイルを取得できません。サービスを呼び出すと、ファイルは表示されません。 私は同じ設定のクライアントでそれを得るのに問題はありません。WCFサービスのトレースファイルを取得できません

私は窓を使用しているWindowsのWebサーバー2008 R2は、4.0を.NETおよびサービスは、IISでホストされている

私の設定ファイル:

<?xml version="1.0"?> 
<configuration> 
    <system.diagnostics> 
     <sources> 
      <source name="System.ServiceModel.MessageLogging" switchValue="Warning, ActivityTracing"> 
       <listeners> 
        <add type="System.Diagnostics.DefaultTraceListener" name="Default"> 
         <filter type="" /> 
        </add> 
        <add name="ServiceModelMessageLoggingListener"> 
         <filter type="" /> 
        </add> 
       </listeners> 
      </source> 
      <source name="System.ServiceModel" switchValue="Warning, ActivityTracing" 
       propagateActivity="true"> 
       <listeners> 
        <add type="System.Diagnostics.DefaultTraceListener" name="Default"> 
         <filter type="" /> 
        </add> 
        <add name="ServiceModelTraceListener"> 
         <filter type="" /> 
        </add> 
       </listeners> 
      </source> 
     </sources> 
     <sharedListeners> 
      <add initializeData="C:\messages.svclog" type="System.Diagnostics.XmlWriterTraceListener, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
       name="ServiceModelMessageLoggingListener" traceOutputOptions="Timestamp"> 
       <filter type="" /> 
      </add> 
      <add initializeData="C:\tracelog.svclog" type="System.Diagnostics.XmlWriterTraceListener, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
       name="ServiceModelTraceListener" traceOutputOptions="Timestamp"> 
       <filter type="" /> 
      </add> 
     </sharedListeners> 
     <trace autoflush="true" /> 
    </system.diagnostics> 
    <system.serviceModel> 
    <diagnostics wmiProviderEnabled="true"> 
     <messageLogging logEntireMessage="true" logMalformedMessages="true" 
     logMessagesAtTransportLevel="true" /> 
    </diagnostics> 
    <behaviors> 
     <endpointBehaviors> 
     <behavior name="Beh"> 
      <dataContractSerializer maxItemsInObjectGraph="10000000"/> 
      <enableWebScript /> 
     </behavior> 
     </endpointBehaviors> 
     <serviceBehaviors> 
     <behavior name="ServiceBehavior"> 
      <serviceMetadata httpsGetEnabled="true" /> 
      <serviceDebug includeExceptionDetailInFaults="true" /> 
      <dataContractSerializer maxItemsInObjectGraph="2147483647"/> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    <bindings> 
     <webHttpBinding> 
     <binding name="WebBinding" closeTimeout="00:10:00" openTimeout="00:10:00" 
      sendTimeout="00:10:00" maxBufferSize="655360000" maxBufferPoolSize="524288000" 
      maxReceivedMessageSize="655360000"> 
      <readerQuotas maxDepth="500000000" maxStringContentLength="500000000" 
      maxArrayLength="500000000" maxBytesPerRead="500000000" maxNameTableCharCount="500000000" /> 
      <security mode="Transport" /> 
     </binding> 
     </webHttpBinding> 
    </bindings> 
    <services> 
     <service behaviorConfiguration="ServiceBehavior" name="WcfService1.PleasureKraftService"> 
     <clear /> 
     <endpoint behaviorConfiguration="Beh" binding="webHttpBinding" 
      bindingConfiguration="WebBinding" name="Basic" contract="WcfService1.IMyService" 
      listenUriMode="Explicit"> 
      <identity> 
      <dns value="localhost" /> 
      </identity> 
     </endpoint> 
     <endpoint address="mex" binding="mexHttpsBinding" contract="WcfService1.IMyService" /> 
     </service> 
    </services> 
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true"/> 
    </system.serviceModel> 
    <system.web> 
    <compilation debug="false"/> 
<httpRuntime maxRequestLength="52428800" /> 
    </system.web> 
    <connectionStrings> 
    <add name="Ent" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=xxxxxx;Initial Catalog=Eu;User ID=xxxx;Password=xxxx;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient"/> 
    </connectionStrings> 
</configuration> 

答えて

1

チェックIISは、上の読み取り/書き込みアクセス権をしている場合ロギングフォルダ。 configから、C $にログオンしているようです。 IISユーザーは、ログフォルダーに対して読み書きアクセス権を持っている必要があります(MachineName \ユーザーアカウントにフォルダーのアクセス権を変更します)。また、C $の代わりにいくつかのフォルダにログを移動してください。

これが役に立ちます。

+0

私はあなたの提案をしましたが、問題は解決しました。どうもありがとう。 – Jakub

+0

リマインダーありがとう - 私は前に "回答"としてマークする方法を見つけることができませんでした。私もそれを評価しようとしましたが、これは15未満の評価を持つユーザー(私は11です)では不可能です。 – Jakub

関連する問題