博客
关于我
NLog类库使用探索——详解配置
阅读量:795 次
发布时间:2023-02-16

本文共 1728 字,大约阅读时间需要 5 分钟。

NLog配置详解

配置文件位置

在程序启动时,NLog会自动扫描以下目录以查找配置文件:

1. 单独的*.exe客户端

  • 标准程序配置文件(通常为程序名.exe.config
  • 程序目录下的程序名.exe.nlog文件
  • 程序目录下的NLog.config文件
  • NLog.dll所在目录下的NLog.dll.nlog文件(在NLog未导入GAC时)

2. ASP.NET程序

  • 标准web程序配置文件web.config
  • web.config同一目录下的web.nlog文件
  • 程序目录下的NLog.config文件
  • NLog.dll所在目录下的NLog.dll.nlog文件(在NLog未导入GAC时)
  • 如果定义了NLOG_GLOBAL_CONFIG_FILE环境变量,则该变量所指向的文件

3. 硬件设备类库(.NET Compact Framework)

  • 程序目录下的NLog.config文件
  • NLog.dll所在目录下的NLog.dll.nlog文件(在NLog未导入GAC时)

配置文件格式

NLog支持两种配置文件格式:

2.1 配置文件格式

  • 配置信息嵌入在.NET应用程序的标准*.exe.configweb.config文件中
  • 保存在独立文件中

常规配置

使用configSections进行配置:

独立文件配置

如果使用独立文件,格式如下:

2.2 配置元素

  • targets:定义日志目标
  • rules:定义日志路由规则
  • extensions:加载NLog扩展
  • include:包含外部配置文件
  • variables:定义配置变量

输出目标

3. 输出目标

日志目标是配置的核心,具体包括:

  • targets:定义日志输出目标
  • rules:定义日志路由规则

路由规则

4. 路由规则

路由规则通过<logger>元素定义,主要属性包括:

  • name:日志源/记录者的名字(可使用通配符*
  • minlevel:匹配日志的最低级别
  • maxlevel:匹配日志的最高级别
  • level:匹配单一日志级别
  • levels:匹配多个日志级别(用逗号分隔)
  • writeTo:规则匹配时,日志写入的目标(用逗号分隔)
  • final:标记当前规则为最后一个规则

例如:

上下文布局信息

5. 上下文布局信息

NLog支持布局(layouts),通过${属性}标记插入上下文信息。常见用途包括:

  • 日期和时间
  • 方法名和类名
  • 日志级别
  • 日志内容

例如:

包含配置文件

6. 包含配置文件

为了分割大型配置文件,NLog支持<include>元素:

变量

7. 变量

配置文件中可以定义变量:

自动再配置

8. 自动再配置

启用autoreload="true",NLog在配置文件修改时自动重新加载配置:

日志排错

9. 日志排错

解决日志问题时,可以通过以下方式:

  • 启用throwExceptions="true"以抛出异常
  • 配置internalLogFile将内部调试信息写入文件
  • 设置internalLogLevel决定内部日志级别
  • 配置internalLogToConsoleinternalLogToConsoleError控制内部日志输出

异步处理

10. 异步处理

启用异步处理:

缺省封装

11. 缺省封装

使用<default-wrapper>统一封装处理目标:

缺省目标参数

12. 缺省目标参数

通过<default-target-parameters>统一定义目标参数:

转载地址:http://fcjfk.baihongyu.com/

你可能感兴趣的文章
nginx + etcd 动态负载均衡实践(一)—— 组件介绍
查看>>
nginx + etcd 动态负载均衡实践(三)—— 基于nginx-upsync-module实现
查看>>
nginx + etcd 动态负载均衡实践(二)—— 组件安装
查看>>
nginx + etcd 动态负载均衡实践(四)—— 基于confd实现
查看>>
Nginx + Spring Boot 实现负载均衡
查看>>
Nginx + Tomcat + SpringBoot 部署项目
查看>>
Nginx + uWSGI + Flask + Vhost
查看>>
Nginx - Header详解
查看>>
Nginx - 反向代理、负载均衡、动静分离、底层原理(案例实战分析)
查看>>
Nginx - 反向代理与负载均衡
查看>>
nginx 1.24.0 安装nginx最新稳定版
查看>>
nginx 301 永久重定向
查看>>
nginx connect 模块安装以及配置
查看>>
nginx css,js合并插件,淘宝nginx合并js,css插件
查看>>
Nginx gateway集群和动态网关
查看>>
Nginx keepalived一主一从高可用,手把手带你一步一步配置!
查看>>
Nginx Location配置总结
查看>>
Nginx log文件写入失败?log文件权限设置问题
查看>>
Nginx Lua install
查看>>
nginx net::ERR_ABORTED 403 (Forbidden)
查看>>