本文将介绍PolarDB-X 1.0 SQL审计日志中包含的日志字段详情。

字段名称 字段说明
__topic__ 日志主题,格式为drds_audit_log_{instance_id}_{db_name},例如drds_audit_log_drdsxyzabcd_demo_drds_db
autocommit SQL执行时autocommit是否打开,取值范围如下:
  • 0:未打开
  • 1或NULL:打开
instance_id PolarDB-X 1.0实例ID。
db_name PolarDB-X 1.0数据库名称。
user 执行SQL的用户名。
client_ip 访问PolarDB-X 1.0实例的客户端IP。
client_port 访问PolarDB-X 1.0实例的客户端端口。
sql 被执行的SQL语句。
trace_id SQL执行的TRACE ID。

如果是事务的话, 会以TRACE ID加-作为前缀+数字表示,例如drdsabcdxyz-1drdsabcdxyz-2等。

sql_code 模板SQL的HASH值。
hint SQL执行的HINT。
logical_cpu_time SQL执行所使用的CPU时间总量,单位:ns。
logical_opt_cpu_time 生成执行计划所使用的CPU时间总量,单位:ns。
logical_exec_cpu_time 执行执行计划所使用的CPU时间总量,单位:ns。
table_name 查询涉及的表名,多个表之间用英文逗号(,)分隔。
sql_type SQL类型,包括SELECT、INSERT、DELECT、SET、ALTER、CREATE、DROP、TRUNCATE、REPLACE和OTHER类型。
sql_type_detail SQL解析器的名称。
sql_time SQL开始执行的时间,格式为yyyy-MM-dd HH:mm:ss.SSS
response_time 响应时间,单位为毫秒(ms)。
affect_rows SQL执行返回行数。
  • 若执行的是增删改等语句时,表示的时影响的行数。
  • 若执行的是查询语句时,表示的是返回的行数。
fail SQL执行是否出错,取值范围如下:
  • 0:成功
  • 1:失败
fetched_rows 从存储拉取的记录行数。
memory_reject 是否因为内存不足执行失败,取值范围如下:
  • 0:否
  • 1:是
spm_baseline_id SQL Plan Management(SPM)中对应的基线ID。
spm_plan_id SPM中对应的执行计划ID。
transaction_id 事务ID。
transaction_policy SQL执行时使用的事务策略,取值范围如下
  • 空:未开启事务
  • TSO:执行PolarDB-X TSO事务(默认取值)
  • BEST_EFFORT:执行PolarDB-X 2PC事务