ITPub博客

首页 > 数据库 > 国内数据库 > YashanDB日志管理

YashanDB日志管理

国内数据库 作者:崖山数据库系统YashanDB 时间:2025-03-18 18:30:11 0 删除 编辑

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

#日志分类

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

  • 运行日志run log:运行日志记录了数据库各服务运行产生的轨迹信息、调试信息、状态变迁、未产生影响的潜在问题和直接的错误信息。
  • 告警日志alert log:当数据库发生死锁、表空间满、网络断连、坏块等错误时,会处于“带病运行”的状态,运维人员应该及时知道这些信息并作出处理。通过数据库在告警日志中发出告警(上报告警事件),运维人员定时检查告警日志,可以防患于未然,时刻了解和维护系统的运行状况。YashanDB包含的所有告警事件信息见参考手册 告警事件。
  • 监听日志listen log:当数据库遭遇连接风暴等问题时,需要查看连接来源定位原因,监听日志会向运维人员提供连接状态和频率等信息。
  • 慢日志slow log:慢日志全称为慢查询日志(Slow Query Log),主要用于记录在数据库中执行时间超过指定时间的SQL语句,可选择输出到日志文件或系统表。通过慢查询日志,可以查找出哪些语句的执行效率低,以便进行优化。
  • 代理程序日志yex_server.log:代理程序日志记录了外置UDF代理程序服务运行产生的轨迹信息、调试信息、状态变迁、未产生影响的潜在问题和直接的错误信息。

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

日志文件 日志内容 说明
$YASDB_HOME/log/集群名/node-nodeid/run/run.log 运行日志 1.安装时默认按此路径及名称创建
2.可通过RUN_LOG_FILE_PATH参数修改文件路径,若路径不存在则会自动创建,需保证用户对该路径拥有相应权限
3.文件名称不可修改
$YASDB_DATA/log/alert/alert.log 告警日志 1.安装时默认按此路径及名称创建
2.文件路径不可修改
3.文件名称不可修改
$YASDB_DATA/log/listener/listener.log 监听日志 1.安装时默认按此路径及名称创建
2.文件路径不可修改
3.文件名称不可修改
$YASDB_HOME/log/集群名/node-nodeid/slow/slow.log 慢查询日志 1.安装时默认按此路径及名称创建
2.可通过SLOW_LOG_FILE_PATH参数修改文件路径,若路径不存在则会自动创建,需保证用户对该路径拥有相应权限
3.可通过SLOW_LOG_FILE_NAME参数修改文件名称
4.输出方式为FILE时记入此文件,为TABLE时记入系统表
$YASDB_DATA/log/external/server/yex_server.log 代理程序日志 1.安装时默认按此路径及名称创建
2.文件路径不可修改
3.文件名称不可修改

#日志归档

下表列示了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
Copied!

日志级别

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

级别 描述
OFF 关闭日志
FATAL 致命错误产生的日志
ERROR 一般错误产生的日志
WARN 告警类错误产生的日志
INFO 正常运行日志(默认日志级别)
DEBUG 调试日志级别
TRACE 追踪日志
ALL 所有日志

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

#告警日志文件内容格式

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

字段 类型 说明
TimeStamp timestamp 产生告警的时间
Session ID uint16 产生告警的会话ID
Event Name text 告警类型名称
Object uint16 产生告警的对象ID
* Object和Event Name一起构成告警的唯一标识符
* 有些告警并不需要Object信息,则该值为0
Action int 告警状态:
* 0:产生告警
* 1:告警消除
Content text 对该告警的其他附带信息
Description text 供用户进一步了解告警的详细信息

#监听日志文件内容格式

日志格式示例如下:

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
Copied!

格式为:

TimeStamp | Protocal | Ip | Port | User | Status

字段 说明
TimeStamp 产生监听记录的时间
Protocal 链路类型
* TCP:TCP连接
* IPC: IPC连接
Ip 客户端IP
Port 客户端PORT
User 连接用户
Status 连接状态
* SUCCESS:连接成功
* ERROR:连接失败

#慢日志内容格式

慢日志文件格式

示例如下:

# 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: 3jd5aq4g9t7gf
SQL: select * from v$parameter where name = 'SLOW_LOG_SQL_MAX_LEN'
Copied!

格式为:

字段 说明
TIME 打印该条慢SQL信息的时间
USER_HOST 执行SQL时的连接信息
DB_NAME 使用的数据库名称
COST_EXECUTE_TIME SQL执行花费的时间,单位为秒
COST_OPTIMIZE_TIME SQL优化计划阶段花费的时间,单位为秒
ROWS_SENT 返回的行数
SQL_ID SQL ID

慢日志系统表格式

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

列名 说明
DATABASE_NAME 数据库名称
USER_NAME 用户名
START_TIME 日志记录时的时间,非执行开始时间
USER_HOST 连接IP
QUERY_TIME 执行时间
ROWS_SENT 查询返回的行数
SQL_ID SQL的ID值
SQL_TEXT SQL语句,超过2000会截断


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70028812/viewspace-3078013/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
崖山数据库系统YashanDB是深圳计算科学研究院完全自主研发设计的新型数据库系统,融入原创理论,支持单机/主备、共享集群、分布式等多种部署方式,覆盖OLTP/HTAP/OLAP交易和分析混合负载场景,为客户提供一站式的企业级融合数据管理解决方案。

注册时间:2023-04-11

  • 博文量
    722
  • 访问量
    640225