网关日志
一、日志系统概述
ThingsGateway 网关内置了完善的日志系统,用于记录系统运行状态、操作事件、错误信息等,是系统监控、故障排查和性能优化的重要工具。
1.1 日志系统的作用
- 故障排查:通过日志可以快速定位系统 故障和错误原因
- 系统监控:记录系统运行状态和关键指标,便于监控系统健康状况
- 性能分析:通过日志分析系统性能瓶颈和优化机会
- 业务分析:记录业务操作和数据处理,用于业务分析和优化
1.2 日志系统架构
ThingsGateway 的日志系统采用分层设计,主要包括以下组件:
- 日志记录器:负责生成和记录日志信息
- 日志处理器:处理日志信息,如格式化、过滤等
- 日志输出:将日志输出到不同目标,如文件、控制台、数据库等
- 日志管理:管理日志文件,如轮转、清理等
二、日志类型
ThingsGateway 系统包含两种主要类型的日志:数据库日志和文本日志。
2.1 数据库日志
数据库日志存储在系统数据库中,主要用于系统级别的监控和审计。
2.1.1 后台日志
后台日志记录系统核心组件的运行状态、 错误信息和操作事件,是系统级别的日志。
主要内容:
- 系统启动和关闭事件
- 插件加载和初始化状态
- 系统配置变更
- 核心服务运行状态
- 系统错误和异常信息
使用场景:
- 系统故障排查
- 系统健康状态监控
- 系统配置变更审计
2.1.2 RPC日志
RPC日志记录设备通信和数据采集过程中的详细信息,是设备级别的日志。
主要内容:
- 设备连接和断开事件
- 数据采集请求和响应
- 通信协议解析过程
- 设备命令执行结果
- 通信错误和异常信息
使用场景:
- 设备通信故障排查
- 数据采集过程分析
- 通信性能优化
- 协议调试
2.2 文本日志
文本日志存储在系统的 Logs 目录中,以文本文件形式保存,主要用于详细的技术分析和调试。
2.2.1 规则引擎日志
规则引擎日志记录规则引擎执行过程中的详细信息,包括规则触发、执行和结果等。
主要内容:
- 规则触发事件
- 节点执行过程
- 执行结 果和输出
- 规则执行错误和异常信息
- 规则引擎状态变更
使用场景:
- 规则执行故障排查
- 规则逻辑分析
- 规则性能优化
- 规则调试
存储位置:Logs/RulesEngineLog/
2.2.2 双机冗余日志
双机冗余日志记录双机冗余系统的运行状态和同步过程中的详细信息。
主要内容:
- 主备切换事件
- 数据同步过程
- 心跳检测结果
- 冗余状态变更
- 冗余系统错误和异常信息
使用场景:
- 冗余系统故障排查
- 主备切换分析
- 同步性能优化
- 冗余系统调试
存储位置:Logs/RedundancyLog/
2.2.3 通道日志
通道日志记录通道级别的运行状态和数据处理过程中的详细信息。
主要内容:
- 通道启动和停止事件
- 通道配置变更
- 数据处理过程
- 通道级别的错误和异常信息
- 通道性能指标
使用场景:
- 通道故障排查
- 数据处理分析
- 通道性能优化
- 通道配置调试
存储位置:Logs/ChannelLog/
2.2.4 设备日志
设备日志记录设备级别的运行状态和数据采集过程中的详细信息,是对RPC日志的补充和扩展。
主要内容:
- 设备状态变更
- 数据采集结果
- 设备命令执行状态
- 设备级别的错误和异常信息
- 设备性能指标
使用场景:
- 设备故障排查
- 数据采集分析
- 设备性能优化
- 设备配置调试
存储位置:Logs/DeviceLog/
三、日志级别
ThingsGateway 支持多种日志级别,用于控制日志的详细程度:
| 日志级别 | 描述 | 使用场景 |
|---|---|---|
| Trace | 最详细的日志,包括所有调试信息 | 开发和调试阶段 |
| Debug | 调试信息,包括详细的执行流程 | 开发和故障排查 |
| Information | 一般信息,记录正常的系统运行状态 | 日常系统监控 |
| Warning | 警告信息,表示可能存在的问题 | 潜在问题预警 |
| Error | 错误信息,表示发生了错误但系统仍能运行 | 错误排查 |
| Critical | 严重错误信息,表示系统可能无法正常运行 | 严重故障排查 |