写点什么

YashanDB 日志管理

作者:YashanDB
  • 2025-03-19
    广东
  • 本文字数:1590 字

    阅读完需:约 5 分钟

日志管理章节所述范围为运维相关的日志管理,不包括与数据相关的 redo/归档日志,对于 redo/归档日志的管理将在文件管理章节描述。

日志分类

YashanDB 的运维类日志分类如下:

  • 运行日志 run log:运行日志记录了数据库各服务运行产生的轨迹信息、调试信息、状态变迁、未产生影响的潜在问题和直接的错误信息。

  • 告警日志 alert log:当数据库发生死锁、表空间满、网络断连、坏块等错误时,会处于“带病运行”的状态,运维人员应该及时知道这些信息并作出处理。通过数据库在告警日志中发出告警(上报告警事件),运维人员定时检查告警日志,可以防患于未然,时刻了解和维护系统的运行状况。YashanDB 包含的所有告警事件信息见参考手册告警事件

  • 监听日志 listen log:当数据库遭遇连接风暴等问题时,需要查看连接来源定位原因,监听日志会向运维人员提供连接状态和频率等信息。

  • 慢日志 slow log:慢日志全称为慢查询日志(Slow Query Log),主要用于记录在数据库中执行时间超过指定时间的 SQL 语句,可选择输出到日志文件或系统表。通过慢查询日志,可以查找出哪些语句的执行效率低,以便进行优化。

  • 代理程序日志 yex_server.log:代理程序日志记录了外置 UDF 代理程序服务运行产生的轨迹信息、调试信息、状态变迁、未产生影响的潜在问题和直接的错误信息。

下表列示了上述日志对应的文件信息:

日志归档

下表列示了 YashanDB 支持日志归档的情况:

Caution

对于不支持归档的日志,数据库管理员应该对其设置定期清理策略,避免占满磁盘空间。

运行日志归档

当运行日志文件达到 RUN_LOG_FILE_SIZE(默认为 20M)后,将进行归档并创建一个新的日志文件,归档的日志文件命名为原日志文件名+时间后缀,如:run/run-20211213151402.log。

代理程序日志归档

当代理程序日志文件达到 16M 后,将进行归档并创建一个新的日志文件,归档的日志文件命名为原日志文件名+时间后缀,如:external/server/yex_server20211213151402.log。

日志格式

运行日志文件内容格式

格式为:日期+时间+[级别]+[模块]+日志信息。如下:

2021-12-13 14:51:23.342 [INFO] [TABLESPACE] succeed to create tablespace SYSTEM2021-12-13 14:53:18.559 [WARN] [CKPT] checkpoint not complete2021-12-13 14:53:22.483 [DEBUG] [HA] send redo from point 0-5-12840-18360, size 278528, standby 1, next send point 0-5-12908-18373
复制代码


日志级别

YashanDB 运行日志支持不同级别的日志管理,并根据配置打印不同级别的日志:

从上到下,日志等级依次增高,高日志级别包含低日志级别。

告警日志文件内容格式

格式为:TimeStamp | Session ID | Event Name | Object | Action | content |Event Escription。各字段说明见下表:

监听日志文件内容格式

日志格式示例如下:

2023-08-02 09:47:26.143 protocal = TCP  ip = fc00:7::126 port = 14526 user = SYS status = SUCCESS2023-08-02 09:47:26.151 protocal = TCP  ip = fc00:7::126 port = 14528 user = SYS status = SUCCESS2023-08-02 09:50:42.005 protocal = TCP  ip = fc00:7::126 port = 14650 user = SYS status = SUCCESS2023-08-02 09:51:34.354 protocal = TCP  ip = fc00:7::126 port = 44058 user = REGRESS status = ERROR2023-08-02 09:54:32.526 protocal = TCP  ip = fc00:7::126 port = 14656 user = SYS status = SUCCESS2023-08-02 09:56:32.126 protocal = IPC  user = SYS status = SUCCESS
复制代码


格式为:

TimeStamp | Protocal | Ip | Port | User | Status

慢日志内容格式

慢日志文件格式

示例如下:

# TIME: 2022-11-18 20:51:30.374# USER_HOST: SYS@127.0.0.1# DB_NAME: test_base1# COST_EXECUTE_TIME: 0.000119# COST_OPTIMIZE_TIME: 0.000040# ROWS_SENT: 1# SQL_ID: 3jd5aq4g9t7gfSQL: select * from v$parameter where name = 'SLOW_LOG_SQL_MAX_LEN'
复制代码


格式为:

慢日志系统表格式

慢日志系统表名为 SLOW_LOG$,表结构定义如下:


发布于: 2025-03-19阅读数: 16
用户头像

YashanDB

关注

全自研国产新型大数据管理系统 2022-02-15 加入

还未添加个人简介

评论

发布
暂无评论
YashanDB日志管理_数据库_YashanDB_InfoQ写作社区