1

WCF(クライアントとサーバーの証明書があります)に問題があります

例外:

System.ServiceModel.ServiceActivationException:要求されたサービス' http://localhost/CustomerServiceSite/Customer.svc 'をアクティブ化できませんでした。詳細については、サーバーの診断トレースログを参照してください。

エラースタックトレース:

DoNegotiation(TimeSpanタイムアウト)System.ServiceModel.Security.SspiNegotiationTokenProvider.OnOpen(TimeSpanタイムアウト)System.ServiceModel.Security.TlsnegoTokenProvider.OnOpen(TimeSpanタイムアウト)System.ServiceModel.Security.WrapperSecurityCommunicationObject.OnOpen(TimeSpanタイムアウト)System.ServiceModel.Channels。 CommunicationObject.Open(TimeSpanタイムアウト)System.ServiceModel.Security.CommunicationObjectSecurityTokenProvider.Open(TimeSpanタイムアウト)System.ServiceModel.Security.SecurityUtils.OpenTokenProviderIfRequired(SecurityTokenProvider tokenProvider、TimeSpanタイムアウト)System.ServiceModel.Security.SymmetricSecurityProtocol.OnOpen(TimeSpanタイムアウト)システム.ServiceModel.Security.WrapperSecurityCommunicationObject.OnOpen(TimeSpan timeout)System.ServiceModel.Channels.CommunicationObject。Open(TimeSpanタイムアウト)OnOpen(TimeSpanタイムアウト)System.ServiceModel.Channels.CommunicationObject.Open(TimeSpanタイムアウト)System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.DoOperation(SecuritySessionOperation操作、EndpointAddressターゲット、Uri経由、SecurityToken currentToken、TimeSpanタイムアウト)システム。 ServiceModel.Security.SecuritySessionSecurityTokenProvider.GetTokenCore(TimeSpanタイムアウト)System.IdentityModel.Selectors.SecurityTokenProvider.GetToken(TimeSpanタイムアウト)ClientSecuritySessionChannel.OnOpen(TimeSpanタイムアウト)System.ServiceModel.Channels.CommunicationObject.Open(TimeSpanタイムアウト)System.ServiceModel.Channels。 ServiceChannel.OnOpen(TimeSpanタイムアウト)System.ServiceModel.Channels.CommunicationObject.Open(TimeSpanタイムアウト)System.Runtime.Remoting.Proxies.RealProxy。HandleReturnMessage(IMessage reqMsg、IMessage retMsg)System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&msgData、Int32 type)System.ServiceModel.ICommunicationObject.Open(TimeSpan timeout)System.ServiceModel.ICommunicationObject.Open(TimeSpan timeout)Open( )。

Dignostics設定(system.serviceModel内)

<diagnostics>
  <messageLogging logEntireMessage="true" logMalformedMessages="true"
  logMessagesAtServiceLevel="true" logMessagesAtTransportLevel="true" />
</diagnostics>

診断エラーはどこで確認できますか?誰かが何が問題になるのか知っていますか?

4

2 に答える 2

4

これらのエラーメッセージをログに記録するには、その構成では不十分です。

必要なのは2つあります。最初は<system.serviceModel>すでに持っている部分で、WCFにログを記録するように指示します。

<system.diagnostics>ただし、その情報をどこに記録するかを定義するために、2番目の部分(内部)も必要です。このようなもの:

<system.diagnostics>
    <sources>
        <source name="System.ServiceModel.MessageLogging" switchValue="Information, ActivityTracing">
           <listeners>
             <add name="messages"
             type="System.Diagnostics.XmlWriterTraceListener"
             initializeData="c:\logs\messages.svclog" />
          </listeners>
        </source>
    </sources>
    <trace autoflush="true" />
</system.diagnostics>

名前空間にはいくつかの異なるログリスナーが定義されていSystem.Diagnosticsます。ここでは、情報をXMLベースのファイルに記録します。このファイルは、 Service TraceViewerTool*.svclogを使用して表示および分析できます。

詳細については、MSDNのメッセージロギングの構成を参照してください。

于 2010-09-12T20:15:04.633 に答える
2

イベントビューアアプリケーションでアプリケーションイベントログを確認するだけです。

于 2010-09-12T20:18:48.190 に答える