2016-04-29 5 views
1

log4net smtp appenderを使用して、アプリケーションでエラーが発生した場合に電子メールアラートを送信しています。設定ファイルを置くのではなく、実行時に電子メールアドレスを割り当てる方法がありますか?設定ファイルは次のとおりです。あなたがアペンダを取得し、プロパティを設定することで、設定を変更してからのような新しいオプションを有効にすることができC#コードからlog4netへのパラメータとして電子メールアドレスを渡す方法smtp appender

public static readonly log4net.ILog applicationLog = log4net.LogManager.GetLogger("MyApplication"); 

答えて

0

:私のように自分のアプリケーションからロガーを初期化しています

<appender name="LogSmtpAppender" type="log4net.Appender.SmtpAppender"> 
     <authentication value="Basic" /> 
     <to value="" /> 

 // Get the Hierarchy object that organizes the loggers 
     Hierarchy hier = log4net.LogManager.GetRepository() as Hierarchy; 
     var smtpappender = 
       (SmtpAppender)hier.GetAppenders().Where(
        appender => appender.Name.Equals("LogSmtpAppender", StringComparison.InvariantCultureIgnoreCase)).FirstOrDefault(); 

      if (smtpappender != null) 
      { 
       // Change your setting here 
       smtpappender.To = "[email protected]" 
       // Activate the options 
       smtpappender.ActivateOptions(); 
      } 
     } 
関連する問題