豚吐露@wiki
loggerから出力ファイル名を取得する
最終更新:
ohden
-
view
loggerから出力ファイル名を取得する
Windows 7-64bit Professional
VisualStudio 2013 Professional
log4net 1.2.11.0
VisualStudio 2013 Professional
log4net 1.2.11.0
とりあえず、以下の用な感じ。
1行目:は、logger取ってきてるだけなので、置いといて。
2行目:Hierarchyが何者かは分からんが、Rootを取得する。
3行目:で、このrootがFileAppenderを持っているので、log4net.xmlとかの設定ファイル内で設定したAppenderの名前を指定してGetAppenderしてやる。
4行目:FileAppenderが出力file pathを持ってる。
2行目:Hierarchyが何者かは分からんが、Rootを取得する。
3行目:で、このrootがFileAppenderを持っているので、log4net.xmlとかの設定ファイル内で設定したAppenderの名前を指定してGetAppenderしてやる。
4行目:FileAppenderが出力file pathを持ってる。
- ILog Log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
- var root = ((log4net.Repository.Hierarchy.Hierarchy)logger.Logger.Repository).Root;
- var appender = root.GetAppender("RollingFileAppender") as log4net.Appender.FileAppender;
- var filepath = appender.File;
ちなみに、『root.Appenders.Count = 0』だと...log4netの設定に失敗しておりまする。(´・ω・`)
あと、どこまで需要があるか分からんけど...
この『appender.File』を変えてやると、出力ファイルが変わる。ので、動的に出力先を変更することができる。
この『appender.File』を変えてやると、出力ファイルが変わる。ので、動的に出力先を変更することができる。
更新日: 2015年03月04日 (水) 17時16分14秒