Log4net之开始使用

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Log4net配置完成之后,就可以使用了。 (一)关联属性 log4net默认关联的是应用程序的配置文件(AppName.exe.config),可以使用程序集自定义属性来进行设置。下面来介绍一下这个自定义属性:log4net.Config.XmlConifguratorAttribute。

Log4net配置完成之后,就可以使用了。

(一)关联属性

log4net默认关联的是应用程序的配置文件(AppName.exe.config),可以使用程序集自定义属性来进行设置。下面来介绍一下这个自定义属性:log4net.Config.XmlConifguratorAttribute

 

XmlConfiguratorAttribute3个属性:

 

ConfigFile 配置文件的名字,文件路径相对于应用程序目录(AppDomain.CurrentDomain.BaseDirectory)ConfigFile属性不能和ConfigFileExtension属性一起使用。自己定义了一个log4net的配置文件时,可以通过这个属性来指定配置文件。

ConfigFileExtension 配置文件的扩展名,文件路径相对于应用程序的目录。ConfigFileExtension属性不能和ConfigFile属性一起使用。当应用程序会编译成不同扩展名称的程序集时,可以使用这个属性。如Sample程序将编译成Sample.exe,则ConfigFileExtension设置为“config”,那么所使用的配置文件名称为:Sample.exe.config。注意不能和ConfigFile属性同时使用。

Watch 如果将Watch属性设置为true,就会监视配置文件。当配置文件发生变化的时候,就会重新加载。在运行期间是否监测配置文件。当值为true时,FileSystemWatcher将用来监视配置文件的内容改变、重命名和删除通知。

如果ConfigFileConfigFileExtension都没有设置,则使用应用程序的配置文件(AppName.exe.config)

 

举例:

 [assembly: log4net.Config.XmlConfigurator(Watch=true,ConfigFile="Sql2000/self.xml")]

使用自定义的配置文件,注意文件的路径,如果配置文件放在主目录的话,则要:

 [assembly: log4net.Config.XmlConfigurator(Watch=true,ConfigFile=" self.xml")]

 

(二)获取日志对象

ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);

LogManager还有其他多个方法

(三)使用

     ILog log = log4net.LogManager.GetLogger(

          MethodBase.GetCurrentMethod().DeclaringType);

            

            log.Error("error", new Exception("发生了一个异常"));

            Console.WriteLine("日志记录完毕。");

(四)结果

1)控制台

System.Exception: 发生了一个异常

日志记录完毕。

2)日志文件

 

[Header]

2009-12-10 11:15:57,593 [TestRunnerThread] ERROR Log4netTest.UTest [(null)]  - error

System.Exception: 发生了一个异常

[Footer]

 

 

更多内容请参考:http://blog.csdn.net/lyjcn/archive/2009/08/11/4432833.aspx(非常感谢作者。)

 可以到下边转转,研究研究

 http://ondotnet.com/pub/a/dotnet/2003/06/16/log4net.html?page=1

 

博客园大道至简

http://www.cnblogs.com/jams742003/

转载请注明:博客园

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
人工智能 Rust 开发者
【MCP教程系列】使用Python在阿里云百炼创建基于UVX的MCP服务完整指南
本文介绍如何使用基于uvx工具链的Python项目,结合阿里云百炼平台实现小红书文案审核助手的MCP服务开发与部署。首先通过安装uv工具初始化项目并配置虚拟环境,编写server.py文件调用qwen-plus模型完成内容审核功能。随后将项目打包上传至PyPI,供全球开发者访问。接着在阿里云百炼平台上配置并部署该MCP服务,解决可能的依赖问题。最后,在智能体应用中引入此MCP服务进行测试验证,确保其正常运行。
2730 0
|
4月前
|
数据采集 存储 算法
MyEMS 开源能源管理系统:基于 4G 无线传感网络的能源数据闭环管理方案
MyEMS 是开源能源管理领域的标杆解决方案,采用 Python、Django 与 React 技术栈,具备模块化架构与跨平台兼容性。系统涵盖能源数据治理、设备管理、工单流转与智能控制四大核心功能,结合高精度 4G 无线计量仪表,实现高效数据采集与边缘计算。方案部署灵活、安全性高,助力企业实现能源数字化与碳减排目标。
131 0
|
2月前
|
存储
服务器数据恢复—服务器断电导致数据丢失的数据恢复案例
某品牌服务器中有12块硬盘,组建了一组raid5磁盘阵列,服务器内存储的是普通文件。 机房供电不稳定导致服务器断电,管理员重启服务器后发现服务器无法正常工作。 根据描述的故障发生过程,北亚企安数据恢复工程师推断故障是意外断电导致raid模块损坏。
|
Shell Linux 数据库
Django管理命令大揭秘:如何打造定制脚本,实现任务自动化?
【8月更文挑战第31天】在现代Web开发中,自动化是提升效率和减少错误的关键。Django管理命令作为一种强大功能,允许我们在项目中轻松创建自定义脚本和自动化任务,如数据备份、报告生成等。通过在`app/commands`目录下创建`.py`文件,可以定义各种管理命令。例如,`send_daily_emails.py`用于发送日常邮件。我们定义一个继承自`BaseCommand`的类,并在`handle`方法中实现具体逻辑。管理命令不仅支持接收命令行参数,还可以充分利用Django的模型、视图和表单,帮助我们高效完成复杂任务。
138 0
|
SQL 开发框架 .NET
EF Core 性能很差?试试这 6 个小技巧
EF Core 性能很差?试试这 6 个小技巧
404 0
|
Linux Perl
Linux 6种日志查看方法,不会看日志会被鄙视的
Linux 6种日志查看方法,不会看日志会被鄙视的
|
数据采集 存储 缓存
详解设备指纹核心算法
大部分风险都来自于身份的不确定性。 比如我们熟知的网络钓鱼、薅羊毛、账号窃取、注册登录等带来的盗用和欺诈都是其身份不确定性造成的直接后果。
1999 0
详解设备指纹核心算法
|
算法 数据挖掘 开发者
特征量化编码 | 学习笔记
快速学习特征量化编码,介绍了特征量化编码系统机制, 以及在实际应用过程中如何使用。
特征量化编码 | 学习笔记
|
人工智能 图形学 计算机视觉
PS2023绿色版永久版注册机photoshop 2023
adobe photoshop2023,该版本采用了最新的设计开发引擎(Mercury Graphics Engine),和最新的内容视频技术,在帮助用户精准的完成图片制作与编辑的同时,2023PS还为用户提供了一些新的选择工具和新的软件界面UI。
1831 1
|
算法
海王算法(看完不会变成海王)
海王算法(看完不会变成海王)
330 0
海王算法(看完不会变成海王)