エラー監視用のNLog拡張機能

ログファイルを使用してエラーを修正することはあまり効果的ではないという考えはありましたか?

エラーをすばやく簡単に修正したいですか?

次に、NLog拡張機能を使用してアプリケーションエラーを監視する方法を説明する私の記事を読んでください。



どのように機能しますか?


エラー監視ソリューションは、監視のために誰もやり直さない大量のコードが記述されている既存のアプリケーションに適している必要があります。

エラー監視は透過的に実行する必要があります。つまり、エラーハンドラーはそれを監視するコードを持ってはいけません。

サンプルの例外処理コードを詳しく見てみましょう。



エラー監視のエントリポイントとして使用できるものは何ですか?

確かに、ロギングシステムが役立ちます。

ロギングシステムには、エラーを収集してグループ化し、監視システムに送信する拡張機能が必要です。 監視システムは開発者に通知を送信し、開発者はエラーを修正します。

以下にその仕組みの図を示します。



これは、Zidium監視システムのNLog拡張機能が実装する作業スキームです。 Zidiumとは何ですか? これは無料で使用できるクラウドベースのアプリケーション監視サービスです。

拡張機能はnugetパッケージ-NLog.Zidiumからインストールできます

拡張機能の詳細については、 ドキュメントをご覧ください。

ハローワールド


すべてがどのように機能するかを示すには、単純なコンソールアプリケーションを作成し、それを監視システムに接続します。 NLogに書き込まれたアプリケーションにエラーがあります。

アプリケーションコード

using NLog;
using System;

namespace NLog2
{
    class Program
    {
        private static Logger logger = LogManager.GetCurrentClassLogger();
        
        static void Main()
        {
            logger.Info("  ");
            try
            {
                throw new Exception("");
            }
            catch (Exception exeption)
            {
                logger.Error(exeption, "  ");
            }
            LogManager.Flush();
        }
    }
}

NLog

PM > Install-Package NLog.Zidium

Zidium.xml

Zidium.xml , exe- .

<?xml version="1.0" encoding="utf-8" ?>
<root>
  <access accountName="Test" secretKey="..." />
  <defaultComponent id="3826486a-66ce-4a50-a310-4c87deaf01db" />
</root>

:

accountName – ,
secretKey – API,
defaultComponent id – ID , .

NLog.config

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      internalLogLevel="Trace" 
      internalLogFile="nlog-internal.log">
  <targets>
    <target name="ZidiumErrors" xsi:type="Zidium.Errors" />
  </targets>
  <rules>
    <logger name="*" minlevel="Info" writeTo="ZidiumErrors" />
  </rules>
</nlog>



, .

, Hello World , email-. .


. .

.

Source: https://habr.com/ru/post/J347528/


All Articles