3

次の質問に対する最終的な回答が必要です。:-)

WCF Web サービスの状態監視を有効にできるかどうか疑問に思っていました。IIS で多数のサービスをホストしており、例外がスローされたときにチームの電子メール通知を送信するように構成しています。ヘルス モニタリングは WCF サービスでは機能せず、WCF トレースを構成する必要があると思いますhttp://msdn.microsoft.com/en-us/library/ms733025.aspx

ありがとうございました

4

1 に答える 1

2

以前にも試してみましたが、すべてのソリューションが複雑すぎるように見えました。

結局、手動で行うだけになりました。

最初にカスタム WebEvent をセットアップします。例えば:

public class SyncError : WebBaseErrorEvent
{
  public SyncError(string message, Exception e)
    : base(message, "Sync", WebEventCodes.WebExtendedBase + 1, 0, e)
  {    
  }

  public override void FormatCustomEventDetails(WebEventFormatter formatter)
  {
    base.FormatCustomEventDetails(formatter);
    formatter.AppendLine(ErrorException.ToString());
  }
}

次に次のように使用します。

// WCF method
public int Sync()
{
  try
  {
    // do normal stuff
  }
  catch (Exception ex)
  {
    var e = new SyncError("Error in Sync", ex);
    e.Raise();
    throw;
  }
}

最後に、web.config を変更します。

<eventMappings>
  <add name="Sync Errors" type="SyncLibrary.SyncError, SyncLibrary"/>
</eventMappings>

<rules>
  <add name="Sync Errors SQL" eventName="Sync Errors" 
       provider="SqlWebEventProvider"
       profile="Default" 
       minInstances="1" 
       maxLimit="Infinite" 
       minInterval="00:00:00" />
</rules>

注: これは、ヘルス モニタリングがオンになっていることを前提としています。

于 2010-05-28T06:03:04.327 に答える