描述
查询实例的SQL审计日志。
请求参数
[tr=rgb(51, 205, 229)][td]名称
类型 | 是否必须 | 描述 |
Action | String | 是 | 系统规定参数,取值:DescribeSQLLogRecords。 |
DBInstanceId | String | 是 | 实例名。 |
Database | String | 否 | 默认为所有。 |
User | String | 否 | 默认为所有。 |
Form | String | 否 | File,触发审计日志文件的生成,若传入这个值,则只返回公共参数,需再调用DescribeSQLLogFiles接口获取文件的最终下载地址;Stream,返回数据流。默认为Stream。 |
QueryKeywords | String | 否 | 关键字查询,多个关键字以空格分隔,不超过10个关键字。 |
StartTime | String | 是 | 查询开始时间,格式如:yyyy-MM-dd’T’HH:mm:ssZ。 |
EndTime | String | 是 | 查询结束时间,格式如:yyyy-MM-dd’T’HH:mm:ssZ,且大于查询开始时间。 |
PageSize | Integer | 否 | 每页记录数,取值:30/50/100;默认值:30。 |
PageNumber | Integer | 否 | 页码,大于0且不超过Integer的最大值;默认值:1。 |
返回参数
[tr=rgb(51, 205, 229)][td]名称
类型 | 描述 |
<公共返回参数> | | 详见公共参数。 |
TotalRecordCount | Integer | 总记录数。 |
PageNumber | Integer | 页码。 |
PageRecordCount | Integer | 本页SQL日志明细个数。 |
Items |
List<SQLRecord> | 无 |
SQLRecord参数
[tr=rgb(51, 205, 229)][td]名称
类型 | 描述 |
DBName | String | 数据库。 |
AccountName | String | 账号名。 |
HostAddress | String | 客户端IP地址。 |
SQLText | String | SQL语句。 |
TotalExecutionTimes | Long | 消耗时间,单位:微秒。 |
ReturnRowCounts | Long | 返回记录数。 |
ThreadID | String | 线程ID。 |
ExecuteTime | String | 执行时间;格式:yyyy-MM-dd’T’HH:mm:ssZ,如2011-05-30 T12:11:20Z。 |
请求示例
https:
//rds.aliyuncs.com/?Action=DescribeSQLLogRecords
&DBInstanceId=riauvjz6zajfiq6ba1370329449201
&StartTime=2011-06-11T15:00:00Z
&EndTime=2013-06-05T15:00:00Z
&<公共请求参数>
返回示例
XML格式
<DescribeSQLLogRecordsResponse>
<RequestId>08A3B71B-FE08-4B03-974F-CC7EA6DB1828
</RequestId>
<TotalRecordCount>1
</TotalRecordCount>
<PageNumber>1
</PageNumber>
<PageRecordCount >1
<PageRecordCount>
<Items>
<SQLRecord>
<DBName>test
</DBName>
<AccountName>accounttest
</AccountName>
<HostAddress>192.168.0.121
</HostAddress>
<SQLText>update test.zxb set id=0 limit 1
</SQLText>
<TotalExecutionTimes >12
</TotalExecutionTimes>
<ReturnRowCounts>34
</ReturnRowCounts>
<ExecuteTime>2011-06-11T15:00:23Z
</ExecuteTime>
</SQLRecord>
</Items>
</DescribeSQLLogRecordsResponse>
JSON格式
{"PageNumber":
1,"TotalRecordCounts":
1,"ItemsCounts":
1
"SQLItems":{"SQLItem":[{"DBName":”test”
"AccountName":”accounttest”
"HostAddress":”
192.168
.0
.121”
"SQLText":”update test.zxb set id=
0 limit
1”
"TotalExecutionTimes":
12
"ReturnRowCounts":
34
"ExecuteTime":”
2011
-06
-11T15:
00:
23Z”}]},"RequestId":
"08A3B71B-FE08-4B03-974F-CC7EA6DB1828"}
阿里云 AI 助理回答
查询实例的SQL审计日志可以通过调用DescribeSQLLogRecords
接口来实现,但请注意,此接口已停止维护,推荐使用查询DAS企业版热存储数据明细功能。尽管如此,以下是根据您的请求参数和返回参数需求整理的指南:
请求参数说明
- Action (String, 必填): 系统规定参数,固定取值为
DescribeSQLLogRecords
。
- DBInstanceId (String, 必填): 指定要查询的RDS实例名。
- Database (String, 可选): 数据库名称,默认查询所有数据库。
- User (String, 可选): 用户名称,默认查询所有用户。
- Form (String, 可选): 定义响应形式,取值:
File
: 触发审计日志文件生成,需进一步调用DescribeSQLLogFiles
获取下载地址。注意:仅支持MySQL(本地盘)和SQL Server实例,且限制记录数为100万条。
Stream
(默认): 直接返回SQL记录列表。
- QueryKeywords (String, 可选): 关键字查询,多个关键字以空格分隔,不超过10个关键字,逻辑关系为
and
。
- StartTime (String, 必填): 查询起始时间,格式为
yyyy-MM-dd'T'HH:mm:ssZ
(UTC时间),可查询最近7天内的数据。
- EndTime (String, 必填): 查询结束时间,格式同上,需大于开始时间且间隔不超过7天。
- PageSize (Integer, 可选): 每页记录数,默认30,可选值为30、50、100。
- PageNumber (Integer, 可选): 页码,默认值为1。
返回参数结构
- TotalRecordCount (Integer): 总记录数。
- PageNumber (Integer): 当前页码。
- PageRecordCount (Integer): 本页SQL日志明细数量。
- Items: 包含以下字段的SQL审计日志列表:
- DBName (String): 数据库名称。
- AccountName (String): 执行操作的账号名称。
- HostAddress (String): 客户端IP地址。
- SQLText (String): SQL语句内容。
- TotalExecutionTimes (Long): SQL执行消耗时间,单位微秒。
- ReturnRowCounts (Long): SQL执行返回的记录数。
- ThreadID (String): 线程ID。
- ExecuteTime (String): SQL执行时间,格式为
yyyy-MM-dd'T'HH:mm:ssZ
。
示例请求URL
https://rds.aliyuncs.com/?Action=DescribeSQLLogRecords&DBInstanceId=<您的实例ID>&StartTime=2023-04-01T00:00:00Z&EndTime=2023-04-07T23:59:59Z&PageSize=50
请替换 <您的实例ID>
为实际的实例标识,并根据需要调整其他参数。
重要提醒: 单用户每分钟调用次数上限为1000次,请合理安排查询频率。此外,该接口已被标记为停止维护,建议转向使用DAS企业版相关功能进行SQL洞察与审计日志查询。