1
我有一個使用Ninject和Log4Net的控制檯應用程序項目。Ninject Log4Net擴展通過TaskScheduller沒有日誌輸出並且沒有錯誤
當我在我的機器上運行應用程序時,日誌記錄工作正常。當我在生產服務器上運行應用程序時,日誌記錄工作正常。當我通過TaskScheduller任務正在運行該程序,該任務正在被其他用戶運行時,我沒有任何appender輸出日誌。我正在使用RollingFileAppender,SmtpAppender和AdoNetAppender。 奇怪的是,程序運行良好,它只是沒有記錄任何東西。
我認爲,因爲該應用程序工作,如果我在本地運行它,log4net配置是好的。
我在程序的主要方法中解析記錄器,然後在需要時通過構造器參數注入它。這是我如何得到應用的主要方法記錄器:
XmlConfigurator.ConfigureAndWatch(new FileInfo("log4net.config"));
var kernel = new StandardKernel();
var loggerFactory = kernel.Get<Log4NetLoggerFactory>();
ILogger logger = loggerFactory.GetCurrentClassLogger();
logger.Info(" Test ");
任何提示,指針或任何....因爲我不知道還有什麼嘗試。
我已經改成了你寫的方式,但我仍然當我運行與任務調度應用程序沒有得到任何日誌輸出。我已經打開了log4net的內部調試,如果我與我的用戶運行該應用程序,我會得到一堆附加的文本顯示。但是,如果我通過任務計劃程序運行應用程序,則在事件查看器中不會出現錯誤,並且沒有日誌輸出。我可以看到該應用程序正在Windows任務管理器中運行。 – 2013-03-07 13:51:30