tencent cloud

云数据库 PostgreSQL

动态与公告
产品动态
产品简介
产品概述
产品特性
产品优势
应用场景
信息安全说明
地域和可用区
产品功能列表
大版本生命周期说明
MSSQL 兼容版
产品计费
计费概述
实例类型与规格
购买方式
退费说明
欠费说明
备份空间收费说明
快速入门
创建 PostgreSQL 实例
连接 PostgreSQL 实例
管理 PostgreSQL 实例
数据导入
通过 DTS 迁移数据
内核能力介绍
内核版本概述
内核版本更新动态
查看内核版本
自研内核功能介绍
数据库审计
审计服务说明
开通审计服务
查看审计日志
修改审计服务
审计性能说明
用户指南
实例管理
升级实例
CPU 弹性扩容
只读实例
账号管理
数据库管理
参数管理
日志管理及分析
备份与恢复
数据迁移
插件管理
网络管理
访问管理
数据安全
租户及资源隔离
安全组
监控与告警
标签
AI 实践
使用 tencentdb_ai 插件调用大模型
使用 tencentdb_ai 插件构建 AI 应用
结合 Supabase 快速构建基于云数据库 PostgreSQL 的后端服务
实践教程
跨库访问
如何在 PostgreSQL 中自动创建分区
基于 pg_roaringbitmap 实现超大规模标签查找
一条 SQL 实现查询附近的人
如何配置云数据库 PostgreSQL 作为 GitLab 外部数据源
通过 cos_fdw 插件支持分级存储能力
通过 pgpool 实现读写分离
通过 auto_explain 插件实现慢 SQL 分析
使用 pglogical 进行逻辑复制
使用 Debezium 采集 PostgreSQL 数据
在 CVM 本地搭建 PostgreSQL 异地灾备环境
只读实例与只读组实践教程
如何使用云函数定时操作数据库
表膨胀处理
性能白皮书
测试方法
测试结果
API 文档
History
Introduction
API Category
Making API Requests
Instance APIs
Read-only Replica APIs
Backup and Recovery APIs
Parameter Management APIs
Security Group APIs
Performance Optimization APIs
Account APIs
Specification APIs
Network APIs
Data Types
Error Codes
常见问题
相关协议
Service Level Agreement
Terms of Service
词汇表
联系我们

审计服务说明

PDF
聚焦模式
字号
最后更新时间: 2024-07-23 12:29:48

审计分类

云数据库 PostgreSQL 支持审计类型为审计极速版审计精细版。具体说明如下:
1. 审计极速版,对性能的影响最小,与原生社区 PostgreSQL 开启 log_statement=all 效果一致,除此之外审计极速版还额外记录了影响行数、执行时长。
2. 审计精细版使用 pgaudit 插件开启全审计,审计日志会记录的更详细,可以审计 SQL 类型、对象名。但相较于极速版理解成本更高,适合有特定需求的开发人员使用。
说明:
单条 SQL,如果存在子查询或函数等的对象调用关系,审计精细版会记录多条日志,分别为多个对象被调用的信息,为了避免同样的语句打印多次,第二次及以后的语句显示为previously logged,SQL类型为???
下面将基于几种不同的场景来对比审计极速版审计精细版记录的日志。
函数调用
具体的 SQL 如下:
CREATE FUNCTION a_t(integer, integer) RETURNS integer
AS 'select $1 + $2;'
LANGUAGE SQL;
select a_t(2,3);
精细审计日志如下图所示:

极速审计日志如下图所示:

表关联
具体的 SQL 如下:
create table a(id integer,name varchar);
create table b(id integer,age int);
insert into a(id,name)values(1,'anne'),(2,'bob');
insert into b(id,age)values(2,30);
select a.id,name,age from a,b where a.id=b.id;
精细审计日志如下图所示:



极速审计日志如下图所示:

子查询
精细审计日志如下图所示:

极速审计日志如下图所示:

存储过程
存储过程的定义及调用如下所示:
CREATE OR REPLACE PROCEDURE update_m(
p_city in integer,
p_ldate in date,
p_id in integer)
AS $$
BEGIN
update m
set city = p_city,
ldate = p_ldate
where city = p_id;
END; $$
LANGUAGE plpgsql;

call update_m(4,'2023-02-05',4);
审计精细版日志如下图所示:

审计极速版日志如下图所示:


记录日志说明

1. 审计极速版审计精细版记录的 SQL 语句类型与使用 log_statement = all 设置所记录的 SQL 类型一致,即会记录所有 simple query 协议和 execute 协议的 SQL。在扩展查询协议(即 extened query)的情况下,在执行阶段之前(即在解析分析或规划期间)出错的语句不会被记录。
2. 审计极速版审计精细版记录的 SQL 语句的长度默认为8192字节,超过限制长度的语句将被截断,同时该 SQL 语句的对象类型、对象名称、执行时间、影响行数也会无法展示。如您需要自定义,请在控制台修改数据库参数 tencentdb_audit_message_truncate_length。当 SQL 语句被截断后,如果该 SQL 语句为慢 SQL 或者执行失败的 SQL,您可到 云数据库 PostgreSQL 控制台 性能优化 > 慢查询分析或者错误日志中查看完整 SQL 详情。
3. 当前大版本为11的云数据库 PostgreSQL 的实例不支持影响行数的统计。
4. 因审计和慢查询使用的计时系统的差异,二者记录的 SQL 执行时间会有毫秒级差异。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈