c# - 在现有应用程序(Windows 或 Web).Net 中添加日志记录的最佳方式

标签 c# .net logging

我继承了几个没有添加任何跟踪或日志记录的 .Net (C#) 应用程序。此应用程序执行从创建、读取、更新和删除记录的所有操作。它发送电子邮件并调用网络服务。

当然,维护它是一场噩梦,因为没有日志记录,也没有 try catch 机制(我知道我也不敢相信)。

那么在这个系统中实现日志记录的最佳方式是什么。我不能去每个函数调用并添加日志记录行。有什么方法可以让我进行动态日志记录,它可以根据我提供的方法名称进行记录。

即当调用 UpdateOrder() 时,我的记录器应该记录(调用了更新的订购方法)

谢谢

最佳答案

使用log4net,它是Apache log4j 的.NET 版本。该库经过了很好的测试,到处都有程序员使用,并且非常可定制。由于您已经继承了这段代码,因此通过它开始添加日志记录支持并不是一件坏事。

自定义设置通过项目中的全局文件处理,可以指定日志信息的去向(电子邮件、文本文件、控制台)以及每个日志信息输出源需要的详细程度。

关于c# - 在现有应用程序(Windows 或 Web).Net 中添加日志记录的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/928587/

相关文章:

python - 如何记录未捕获的崩溃的回溯?

c# - 有没有办法确定 IEnumerable<T> 是序列生成器还是真正的集合?

c# - 如何使用 protobuf-net 代理序列化继承链中的类型?

c# - 使用缩进和 xml :space ="preserve" 保存 XDocument

c# - Docker如何部署dotnet nginx? (不带.csproj)

c# - c#中的 boolean 聚合模式

c# - 在同一 App.Config 中使用 ConnectionStrings 和自定义 ConfigSections

SQL 批量删除

java - log4j 与 log4j2 : log to different file

c# - 使用 Html Agility Pack 在两个 HTML 标签之间获取内容