こんばんわ!こふそ(@koheta0325)です!
log4netの使い方を紹介します。
環境
- .NET Framework 4.6
- VisuakStudio Community 2017
設定方法
log4netのインストール
ツール→Nugetパッケージマネージャー→ソリューションのNuGetパッケージの管理を選択します。
log4netを検索し、ヒットしたら、チェックボックスをいれてインストールを実行します。
AssemblyInfo.csの設定
log4netのログ出力形式の設定をApp.configに持たせる場合は、AssemblyInfo.csに対して、次のように追記します。
//最下行に追加
//log4netの設定。App.configに設定を持たせる場合
[assembly: log4net.Config.XmlConfigurator(Watch = true)]
//log4netの設定。任意のファイルに設定を持たせる場合
//[assembly: log4net.Config.XmlConfigurator(Watch=true, ConfigFile="設定ファイルパス")]
ログの出力設定
App.configにログの出力設定を記述します。
<?xml version=”1.0″ encoding=”utf-8″?>
<configuration>
<startup>
<supportedRuntime version=”v4.0″ sku=”.NETFramework,Version=v4.6″/>
</startup>
<appSettings>
</appSettings>
<!–log4netの設定ここから–>
<configSections>
<section name=”log4net” type=”log4net.Config.Log4NetConfigurationSectionHandler,log4net” />
</configSections>
<log4net>
<appender name=”LoggerFile” type=”log4net.Appender.RollingFileAppender”>
<!– ログファイルのパス –>
<File value=”C:\Logs” />
<!– 追加書き込み –>
<appendToFile value=”true” />
<!– 日付ごとにファイルを作成 –>
<rollingStyle value=”date” /> <!– ログ・ファイル名が固定ではない場合、falseを指定する –>
<staticLogFileName value=”false” />
<!– ファイル名の設定 –>
<datePattern value='”.”yyyyMMdd”.log”‘ /> <layout type=”log4net.Layout.PatternLayout”>
<!– ログの書式 –>
<conversionPattern value=”%d[%t] %p – %m%n”/>
</layout>
</appender>
<root>
<level value=”All” />
<!– どのログ出力先を使用するか –>
<appender-ref ref=”LoggerFile” />
</root>
</log4net>
<!–log4netの設定ここまで–>
</configuration>
サンプルプログラム
private static readonly ILog log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
static void Main(string[] args) {
log.Fatal("Fatal");
log.Error("Error");
log.Warn("Warn");
log.Info("Info");
log.Debug("Debug");
Console.ReadLine();
}
以上です。