NLog Block overflow action重要日志判定规则及日志级别咨询
NLog Block写入模式下重要日志的判定说明
判定主体
- 文档中提到的“重要logevents”没有框架内置的固定判定标准,判定主体是NLog的配置使用者(开发/运维人员),框架只会严格按照你在异步目标包装器(
AsyncTargetWrapper)中设置的丢弃规则执行逻辑,不会主动给日志标记重要性。
基于日志级别的常规判定规则
- 当你选择用日志级别作为重要性判定依据时,哪些级别属于重要日志完全由你通过配置参数指定,没有强制要求。从官方推荐的生产环境常规配置来看,一般会把以下级别划为不可丢弃的重要日志,队列满时触发Block逻辑保护这些日志不丢失:
Fatal:会导致系统核心功能完全不可用、服务崩溃的致命错误日志Error:核心业务流程执行失败、需要立即介入排查的错误日志
- 其余
Warn(警告)、Info(信息)、Debug(调试)、Trace(追踪)级别日志,常规配置下会被归为可丢弃的非重要日志,队列满时不会触发应用线程阻塞,会被直接丢弃以避免影响业务主流程性能。
补充提示:日志级别只是最常用的判定维度,你完全可以根据业务需求自定义过滤规则,比如将支付、交易等核心链路模块的所有级别日志都划为重要日志,不受级别限制。
内容的提问来源于stack exchange,提问作者a.samiei
相关产品推荐
相关产品推荐

