安装Windows serivce后,不会创建Log4net日志文件 [英] Log4net log file is not created after installing windows serivce

查看:221
本文介绍了安装Windows serivce后,不会创建Log4net日志文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,

我在Windows服务中使用log4net。

在app.config中,我有类似的代码......



Hello,
Iam using log4net with windows service.
In app.config i have the code like...

configsections
    section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" 
  configsections
  log4net
    appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"
      file value="ErrorLog\Log.txt" 
     
      appendtofile value="true" 
      rollingstyle value="Size" 
      maxsizerollbackups value="5" 
      maximumfilesize value="10MB" 
      staticlogfilename value="true" 
      layout type="log4net.Layout.PatternLayout"
        conversionpattern value="%date [%thread] %level %logger - %message%newline%exception" 
layout
    appender
    root
      priority value="ALL" 
      appender-ref ref="RollingFileAppender" 
    root
log4net





它运行正常。日志文件是在服务的调试文件夹中创建的,如果我安装并运行它不能正常运行的服务。

偶数< file value =C:\ ErrorLog \Log .TXT>两者都工作正常。

感谢您的帮助



It's working fine.The log file is created in debug folder in service,if i install and run the service it's not working.
Even <file value="C:\ErrorLog\Log.txt"> is working fine in both.
Thanks for any help

推荐答案

Windows服务在WIN\SYSTEM32目录中启动,因此在初始化之前log4net将 CurrentDirectory 设置为 System.Reflection.Assembly.GetEntryAssembly()。Location
Windows services start up in the WIN\SYSTEM32 directory, so before initializing log4net set the CurrentDirectory to System.Reflection.Assembly.GetEntryAssembly().Location


这篇关于安装Windows serivce后,不会创建Log4net日志文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆