概要
log4netはログ出力を行うライブラリで、これを使ってC#のプログラムのログ出力を行います。
log4netの導入手順
まずは、log4netを自分のプロジェクトに導入する必要があります。

Visual Studioを開き、ソリューションの右クリックメニューから「ソリューションのNuGetパッケージ管理」を選択します。

log4netで検索して、log4netのインストールを行います。

インストールが完了すると、参照やpackages.configを見ると、パッケージがインストールされていることが分かります。
実践
log4net.xmlの作成

プロジェクトの直下に、log4net.xmlファイルを作成します。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
	<log4net>
		<appender name="log4net" type="log4net.Appender.RollingFileAppender">
			<appendToFile value="true" />
			<StaticLogFileName value="false" />
			<rollingStyle value="Date" />
			<file value=".\log\trace-" />
			<DatePattern value='yyyyMMdd".log"' />
			<filter type="log4net.Filter.LevelRangeFilter">
				<param name="LevelMin" value="INFO" />
				<param name="LevelMax" value="Error" />
			</filter>
			<layout type="log4net.Layout.PatternLayout">
				<ConversionPattern value="%date [%level] %message%n" />
			</layout>
		</appender>
		<root>
			<level value="ALL" />
			<appender-ref ref="log4net" />
		</root>
	</log4net>
</configuration>上記のような内容で、ログ出力の設定を入力します。
log4netのパラメータは多々あるのでググってみてください。

また、ビルド時にlog4net.xmlを出力するように、プロパティの設定「出力ディレクトリにコピー」を常にコピーするに設定変更します。
AssemblyInfo.csにlog4net.xmlの設定
以下を、Properties\AssemblyInfo.csのファイルに追記
[assembly: log4net.Config.XmlConfigurator(Watch = true, ConfigFile = "log4net.xml")]ログ出力実装
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleTest1
{
    internal class Program
    {
        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
        static void Main(string[] args)
        {
            logger.Debug("デバッグ");
            logger.Info("情報");
            logger.Warn("警告");
            logger.Error("エラー");
            logger.Fatal("致命的障害");
        }
    }
}
実行結果
2021-12-31 18:00:39,648 [DEBUG] デバッグ
2021-12-31 18:00:39,656 [INFO] 情報
2021-12-31 18:00:39,656 [WARN] 警告
2021-12-31 18:00:39,656 [ERROR] エラー
2021-12-31 18:00:39,656 [FATAL] 致命的障害
loggerを使って、テキストにログ出力することができました。
 
  
  
  
  
