これまでの記事では、コンソールに出力されるログを、最も簡易な方法でファイルにリダイレクト出力する方法を解説してきました。もっと様々な要件を満たすログ出力のためには、-l オプションが用意されています。
ヘルプ(-? オプションで表示)より抜粋
-l log_config_file
ログ出力のための設定ファイル(指定しないとコンソールに出力します)
ログ出力のための設定ファイル(log_config_file)のサンプルを次に載せます。
logConfig.xml のような名前(名前は任意)を付けたXMLファイルを、メモ帳やテキストエディタで編集し、この例では文字コードをUTF-8で保存してください。
<?xml version="1.0" encoding="utf-8"?> <configuration> <log4net> <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> <file value="C:\xxxxx\xxxxx\xxxxx\xbtrun.log" /> <StaticLogFileName value="true" /> <appendToFile value="true" /> <maximumFileSize value="1000KB" /> <maxSizeRollBackups value="10" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" /> </layout> <lockingmodel type="log4net.Appender.FileAppender+MinimalLock" /> </appender> <root> <level value="INFO" /> <appender-ref ref="RollingFileAppender" /> </root> </log4net> </configuration>
実行コマンドラインは次のようになります。xbtrun.exe のフルパスは省略しています。-f オプションには .xbt ファイルまたは .xob ファイルを指定します。
xbtrun.exe -f sample.xbt -l C:\xxxxx\xxxxx\xxxxx\logConfig.xml
ログは、設定ファイルの中で
<file value="C:\xxxxx\xxxxx\xxxxx\xbtrun.log" />
で指定された位置に出力されます(ログファイル名は任意です)。
このログ出力のための設定ファイルは、log4net 仕様となっていますので、その他の設定方法に関しては、ネット上の log4net に関する記事を参照してください。
また、xoBlos コントローラーのWebアプリ(corabo)や、xoBlos クライアントの出力ログも log4net 仕様ですので、設定値に関しては以下の記事も参考にしてください。
corabo:ログファイルのサイズ上限と、1日に作成される個数を増やす
https://xoblos.hatenablog.jp/entry/2018/01/08/150253
corabo:ログファイルのログレベル
https://xoblos.hatenablog.jp/entry/2018/01/25/175002