- 題名: log4netで設定したログ出力先パス、ファイル名の取得
- 日時: 2008/05/15 10:59:00
- ID: 22030
- この記事の返信元:
- (なし)
- この記事への返信:
- [22078] Re[1]: log4netで設定したログ出力先パス、ファイル名の取得2008/05/21 14:27:09
- ツリーを表示
当方、C# しか経験がありませんが、以下参考になりますでしょうか。 log4net.Repository.ILoggerRepository[] repositories = log4net.LogManager.GetAllRepositories(); foreach (log4net.Repository.ILoggerRepository repository in repositories) { foreach (log4net.Appender.IAppender appender in repository.GetAppenders()) { log4net.Appender.FileAppender fileAppender = appender as log4net.Appender.FileAppender; if (fileAppender != null) { // 何かの処理 } } }
分類:[ASP.NET]
ASP.Net2.0で、log4netを利用してログ出力を行っています。
log4net.configにて設定したログ出力先のパス、ファイル名を取得しようと思っているのですが、
APIからなかなか見つけれません。
どのようにすれば取得することができるのか教えて頂けないでしょうか。
現在の設定は下記の通りで、「.\log\Online.log」を取得したいと考えています。
【log4net.config】
<appender name="RollingFileAppender_Size" type="log4net.Appender.RollingFileAppender">
<!-- ファイル名 -->
<param name="File" value=".\log\Online.log" />
</ appender>
【Global.asax】
Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
'アプリケーションのスタートアップで実行するコードです()
'--------------------
' log4netの設定
'--------------------
Dim rootPath As String = Me.Server.MapPath("~/")
log4net.Config.XmlConfigurator.Configure(New System.IO.FileInfo(rootPath & "log4net.config"))
End Sub
【アプリケーション】
'Private定数の定義
Private Shared ReadOnly log As log4net.ILog = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)
'ログ出力
log.Debug("メッセージ")