对于某些硬件的 C# 回归测试模拟,我们使用 log4net 来跟踪模拟的执行。每次出现问题时都会记录错误,当然应该是零错误。我们使用错误计数来确定测试的通过/失败,目前我们在日志中搜索 ERROR 来确定这一点。
是否可以从 log4net 检索每次记录错误时递增的错误计数?我看到可以将错误记录到单独的文件中,但这并不是我们想要的,当然,我们可以通过一些摆弄来间接地从中提取信息。
提前致谢。
我会直接登录到数据库或创建例程将日志文件导入数据库。一旦日志位于数据库表中,就可以使用 SQL 轻松查询它们。
我想不出任何直接内置到 log4net 中的东西。
要么使用一些内置的 appender,让你按照 Jaime 的建议计算错误发生,要么创建你自己的 appender,这完全符合你的要求。它并不太复杂,尤其是因为您计划使用 log4net 来自动化整个测试过程。
正如康拉德建议的那样,自己动手。您应该对ForwardingAppender 进行子类化,使其在发送到“真实”附加程序的途中对消息进行计数。appender 可以将实际计数记录到单独的 appender。