c# - 最小化生产中的日志语句

标签 c# logging log4net

我有一个 C# 控制台应用程序项目,它使用 log4net 作为日志记录库。在整个应用程序中都有日志记录语句(log.Debug()log.Error() 等),它们会在程序运行时打印到控制台。

在生产环境中更改日志语句的最佳方法是什么,以最大程度地减少日志记录导致的执行时间?我希望一些语句根本不打印出来,而一些日志语句只在生产过程中打印出来。

我正在考虑在 Web.config 文件中添加新设置,以确定日志记录的变化方式。但是我认为我还需要覆盖 log.Debug()log.Error() 方法才能使用新设置,但我不确定该怎么做这。任何人都可以建议吗?

最佳答案

Web.config 文件中没有任何设置可以告诉 log4net 根据您的构建做不同的事情。

但是,您可以拥有多个 Web.config 文件,并根据构建或部署环境部署所需的文件。以下链接可能会有所帮助:

关于c# - 最小化生产中的日志语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43839531/

相关文章:

c# - 返回 Json,但它包含反斜杠 "\",我不想要

php - 模块的单个集中或单独的日志表?

logging - (为什么)log4net 不再开发了吗?

c# - Linux 上的 Nuget 和 dotnet - 使用/打包提供的包

c# - VS2022配置Azure keyvault看不到本地secrets.json

java - 使用 org.apache.commons.logging.LogFactory.getLog 的最佳实践

database - Azure SQL MI 与 AD - 与 MFA 通用 - 登录日志

c# - 多线程代码执行的 Log4Net C# 日志记录问题

c# - Log4net:在创建的文件名中附加时间戳

c# - NUnit.Framework.Assert.IsInstanceOfType() 已过时