我已经为我的C#应用程序实现了Log4Net。我需要保存所有级别的日志。我目前正在将它们保存到txt文件中。但是,过了一段时间后,很难在txt文件中找到特定的日志。所以我必须将输出文件放入一个结构中。我读到了关于XML和JSON结构的内容,但我无法确定哪一个更有效..
问题:您建议我使用XML或JSON作为输出结构,为什么?还是其他任何建议?
由于
答案 0 :(得分:0)
我建议保留文本格式,但配置log4net以获得更好的日志记录。 我总是有超过1个日志文件。
这就是我的建议:
过滤日志以仅显示特定类/程序集的日志 就像你使用CRM一样,它会打印很多你不想要的东西。比如this one。
设置log4net以每天创建不同的文件(或者每10 MB有太多数据)
答案 1 :(得分:0)
XML或JSON将使得直接读取日志变得更加困难,因为增加了混乱和转义。 然而(这是一个非常重点),如果您使用JSON,则可以将日志导入ELK(弹性搜索,Logstash,Kibana堆栈)。那么,通过日志将是轻而易举的。您可以使用log4net.Ext.Json生成该JSON。
就像@Ashkan建议的那样,我将本地文本文件保存在本地并将JSON流式传输到中央存储,例如ELK。