私は、ASP.Netヘルスモニタリング用のカスタムプロバイダーの作成方法と使用方法に関するウォークスルーをお探しです。ASP.Netヘルスモニタリング用のカスタムプロバイダの作成方法と構成方法
これまでのところ、エラー時に電子メールを生成する電子メールプロバイダとしか連携していませんでした。基本的には同じことをやりたいのですが、より柔軟に対応したい:
私はイベントにアクセスできるようにHealthMonitoring機能を使用したい(私はglobal.asaxでApplication_OnErrorイベントを使いたくない)カスタムコードを実行するために、電子メールに提供されたすべての情報を含む "OnNewHealthMonitoringEntry"のようにスローされます。
編集:私は私自身のカスタムプロバイダを構築し、それを実装することができましたhttp://www.asp.net/general/videos/how-do-i-create-a-custom-provider-for-logging-health-monitoring-eventsここに提供されたソースコードに基づいて
。カスタムプロバイダを設定するための新しい属性を追加したいと思います。ここ は、web.configファイルは次のようになります。私はこの
<providers>
<add name="FileEventProvider" buffer="true" bufferMode="Log Notification" foo="bar" type="healthmonitoringtest.FileHealthMonitorEventProvider"/>
</providers>
のように、プロバイダに属性を追加しようとすると
<healthMonitoring>
<bufferModes>
<add name="Log Notification" maxBufferSize="1" maxFlushSize="1" urgentFlushThreshold="1" regularFlushInterval="Infinite" urgentFlushInterval="00:00:10"/>
</bufferModes>
<providers>
<add name="FileEventProvider" buffer="true" bufferMode="Log Notification" type="healthmonitoringtest.FileHealthMonitorEventProvider"/>
</providers>
<profiles>
<add name="Custom" minInstances="1" maxLimit="Infinite" minInterval="00:00:00"/>
</profiles>
<rules>
<add name="File Event Provider" eventName="All Errors" provider="FileEventProvider" profile="Custom"/>
</rules>
</healthMonitoring>
私はエラーが言ってますよ:
の例外 'System.Configuration.ConfigurationErrorsException' がSystem.Web.dllで発生しましたが、ユーザーコードで処理された ではありませんでした。 l 情報: FileEventProviderの構成で、予期しない属性foo があります。
カスタムプロバイダに必要な設定をhealthMonitoringセクションの近くに保存することはできますか?私はappSettingsノードに設定を含めることができたと思いますが、何らかの形で(healthMonitoringノード内の)属性を設定したいと思います。それは可能ですか?
EDIT2: あなたがこの記事を見てかかることがあります:http://www.tomot.de/en-us/article/6/asp.net/how-to-create-a-custom-healthmonitoring-provider-that-sends-e-mails
あなたが見つけたリンクのどの部分が不明ですか?おそらく、私たちがそこから始めるなら、あなたに良い答えを与えることができます。 – NotMe
「不明」の場合は、このコードサンプルを使用したアプローチが、カスタムプロバイダを使用する正しい方法か、古い非推奨のコードである場合を意味します。 – citronas
私の質問を編集し、プロバイダに任意の属性。私のgoogle検索は、私の宗教に関連する回答を出さなかった。 (これは新しい質問をするのも納得できませんでした) – citronas