当前位置:
首页 > Python基础教程 >
-
C#教程之windows service使用log4net 记录日志
最近写了个定时邮件推送的服务,当利用lognet4记录日志时,发现日志并没有记录。后来明白windows 服务一般默认是在C:\Windows\System 或是C:\Windows\System32,而我们自己的服务程序一般是放在其他的目录,这样log4net.config文件中的配置路径将无法正确解析。所以就无法记录日志。本来我的lognet4文件与服务文件位于同一目录,后来我就把lognet4.config文件放在了程序exe所在的目录。
1. 我的lognet4.config文件配置内容如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
<?xml version= "1.0" encoding= "utf-8" ?> <configuration> <configSections> <section name= "log4net" type= "log4net.Config.Log4NetConfigurationSectionHandler,log4net" /> </configSections> <log4net> <logger name= "sendEmailrError" > <level value= "ALL" /> <!--ALL DEBUG INFO WARN ERROR FATAL OFF--> <appender- ref ref = "RollingLogFileAppender" /> </logger> <!--<logger name= "ugmrob2bLoggerInfo" > <level value= "ALL" /> --><!--ALL DEBUG INFO WARN ERROR FATAL OFF--><!-- <appender- ref ref = "LoggerInfo" /> </logger>--> <appender name= "LoggerInfo" type= "log4net.Appender.RollingFileAppender" > <lockingModel type= "log4net.Appender.FileAppender+MinimalLock" /> <!--存放日志的路径--> <param name= "File" value= "E:/Log/LogInfo/" /> <!--日志文件中追加--> <param name= "AppendToFile" value= "true" /> <!--日期文件是否固定不变--> <param name= "StaticLogFileName" value= "false" /> <!--最多保存多少天的记录--> <param name= "MaxSizeRollBackups" value= "100" /> <param name= "MaximumFileSize" value= "5MB" /> <!--日志名称--> <param name= "DatePattern" value= "yyyy-MM-dd" .log "" /> <!--日志根据日期滚动--> <param name= "RollingStyle" value= "Date" /> <layout type= "log4net.Layout.PatternLayout" > <param name= "ConversionPattern" value= "%n异常时间: %d%n记录器: %c%n异常信息: %m%n异常位置:[%t] %-5p [%l]%n" /> </layout> </appender> <appender name= "RollingLogFileAppender" type= "log4net.Appender.RollingFileAppender" > <lockingModel type= "log4net.Appender.FileAppender+MinimalLock" /> <!--存放日志的路径--> <param name= "File" value= "E:/Log/LogError/" /> <!--日志文件中追加--> <param name= "AppendToFile" value= "true" /> <!--日期文件是否固定不变--> <param name= "StaticLogFileName" value= "false" /> <!--最多保存多少天的记录--> <param name= "MaxSizeRollBackups" value= "100" /> <param name= "MaximumFileSize" value= "5MB" /> <!--日志名称--> <param name= "DatePattern" value= "yyyy-MM-dd" .log "" /> <!--日志根据日期滚动--> <param name= "RollingStyle" value= "Date" /> <layout type= "log4net.Layout.PatternLayout" > <!--<param name= "ConversionPattern" value= "%n异常时间: %d%n记录器: %c%n异常信息: %m%n异常位置:[%t] %-5p [%l]%n" />--> <conversionPattern value= "%n记录时间:%date 线程ID:[%thread] 日志级别:%-5level %n错误描述:%message%newline" /> </layout> <!--<filter type= "log4net.Filter.LevelRangeFilter" > <param name= "LevelMin" value= "DEBUG" /> <param name= "LevelMax" value= "FATAL" /> </filter>--> </appender> </log4net> </configuration> |
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式