小编Ste*_*enH的帖子

企业库日志记录 - 如何在运行时获取配置的日志记录级别?

我们使用 Enterprise Library 4.1 进行日志记录(和异常处理/加密)。

有谁知道在运行时确定配置的日志记录级别的好方法吗?我编写了一个 LogUtility 类来进行日志记录调用,并按照以下示例调用它:

LogUtility.LogVerbose(
    string.Format("Processing event {0}", currentEvent.EventIDImported), 
    MethodBase.GetCurrentMethod().Name, 
    this.GetType().Name
);
Run Code Online (Sandbox Code Playgroud)

我知道它实际上不会被记录到文件中,除非将日志记录级别设置为适当的级别,在我的情况下是在 app.config 中。但我真的不希望方法参数,即方法和类型名称,以及在某些情况下记录的实际字符串,除非绝对必要,否则会被评估。

这似乎是一个合理的担忧吗?我们的应用程序可以有数千万次迭代和记录点。如果可能,我想根据配置的日志级别设置一个标志,并在调用上述方法之前进行检查。

编辑 - 我想就上面的例子而言,我可以在每次调用时硬编码方法和类型名称。但我还是想知道是否有一种确定水平的方法。

c# logging enterprise-library

5
推荐指数
1
解决办法
4248
查看次数

标签 统计

c# ×1

enterprise-library ×1

logging ×1