Você pode chamar a operação DescribeSQLLogRecords para consultar os logs gerados pelo recurso SQL Explorer (SQL Audit) de uma instância.
Antes de chamar esta operação, verifique se a instância executa um dos seguintes mecanismos de banco de dados:
MySQL
SQL Server
PostgreSQL
Esta operação pode ser chamada até 1.000 vezes por minuto por conta. As chamadas feitas pela sua conta da Alibaba Cloud e pelos usuários RAM dentro dela são contabilizadas conjuntamente.
Esta operação não pode ser usada para consultar os logs gerados pelo SQL Explorer Trial Edition em uma instância do ApsaraDB RDS for MySQL.
Ao chamar esta operação com o parâmetro Form definido como File para gerar um arquivo de auditoria, no máximo 1 milhão de entradas de log podem ser registradas no arquivo, e não é possível filtrar entradas por palavra-chave.
Debugging
Parâmetros de solicitação
| Parameter | Type | Required | Example | Description |
| Action | String | Yes | DescribeSQLLogRecords | A operação a ser executada. Defina o valor como DescribeSQLLogRecords. |
| ClientToken | String | No | ETnLKlblzczshOTUbOCzxxxxxxx | O token do cliente usado para garantir a idempotência da solicitação. Use o cliente para gerar o valor, assegurando que o token gerado seja exclusivo entre solicitações diferentes. O token pode conter apenas caracteres ASCII e não pode ultrapassar 64 caracteres. |
| DBInstanceId | String | Yes | rm-uf6wjk5xxxxxxx | O ID da instância. |
| SQLId | Long | No | 25623548 | O ID exclusivo da instrução SQL. |
| QueryKeywords | String | No | table_name | A palavra-chave usada na consulta.
Nota Após insira uma palavra-chave, o sistema faz a correspondência com base nos parâmetros Database, User e QueryKeywords. Esses parâmetros usam o operador lógico OR. |
| StartTime | String | Yes | 2011-06-01T15:00:00Z | O início do intervalo de tempo da consulta. É possível consultar logs gerados nos últimos 30 dias. Especifique o horário no padrão ISO 8601, no formato yyyy-MM-ddTHH:mm:ssZ. O horário deve estar em UTC. |
| Database | String | No | Database | O nome do banco de dados. É permitido informar apenas um nome. Se este parâmetro for especificado, a operação retorna somente os logs gerados para o banco de dados indicado. Caso contrário, retorna os logs de todos os bancos de dados na instância. |
| User | String | No | user | O nome de usuário da conta. É permitido informar apenas um nome de usuário. Se este parâmetro for especificado, a operação retorna somente os logs gerados para a conta indicada. Caso contrário, retorna os logs de todas as contas na instância. |
| Form | String | No | Stream | Indica se a operação deve gerar um arquivo de log de auditoria SQL ou retornar entradas de log. Valores válidos:
Nota Ao defina este parâmetro como File, apenas instâncias do ApsaraDB RDS for MySQL que utilizam SSDs locais e instâncias do ApsaraDB RDS for SQL Server são compatíveis, e no máximo 1 milhão de entradas de log são retornadas. |
| EndTime | String | Yes | 2011-06-11T15:00:00Z | O fim do intervalo de tempo da consulta. O horário de término deve ser posterior ao horário de início, e o intervalo entre eles não pode ultrapassar 30 dias. Especifique o horário no padrão ISO 8601, no formato yyyy-MM-ddTHH:mm:ssZ. O horário deve estar em UTC. |
| PageSize | Integer | No | 30 | O número de entradas a serem retornadas por página. Valores válidos: 30 a 100. Valor padrão: 30. |
| PageNumber | Integer | No | 1 | O número da página a ser retornada. Valores válidos: qualquer inteiro positivo diferente de zero. Valor padrão: 1. |
Parâmetros de resposta
|
Parameter |
Type |
Example |
Description |
|
RequestId |
String |
08A3B71B-FE08-4B03-974F-CC7EA6DB1828 |
O ID da solicitação. |
|
PageNumber |
Integer |
1 |
O número da página retornada. |
|
PageRecordCount |
Integer |
30 |
O número de entradas de log de auditoria SQL na página atual. |
|
TotalRecordCount |
Long |
100 |
O número total de registros retornados. |
|
Items |
Array of SQLRecord |
Um array com os detalhes de cada entrada de log de auditoria SQL. |
|
|
SQLRecord |
|||
|
HostAddress |
String |
192.168.0.121 |
O endereço IP do cliente conectado à instância. |
|
SQLText |
String |
update test.zxb set id=0 limit 1 |
A instrução SQL executada na consulta. |
|
ReturnRowCounts |
Long |
30 |
O número de entradas de log de auditoria SQL retornadas. |
|
DBName |
String |
testDB |
O nome do banco de dados. |
|
ExecuteTime |
String |
2011-06-11T15:00:23Z |
O horário em que a instrução SQL foi executada. O horário segue o formato yyyy-MM-dd T HH:mm:ss Z e é exibido em UTC. |
|
ThreadID |
String |
1025865428 |
O ID da thread. |
|
TotalExecutionTimes |
Long |
600 |
A duração de execução da instrução SQL. Unidade: microssegundos. |
|
AccountName |
String |
accounttest |
O nome de usuário da conta registrada na entrada de log de auditoria SQL. |
Exemplos
Exemplos de solicitações
http(s)://rds.aliyuncs.com/?Action=DescribeSQLLogRecords
&DBInstanceId=rm-uf6wjk5xxxxxx
&StartTime=2011-06-01T15:00:00Z
&EndTime=2011-06-11T15:00:00Z
&<Common request parameters>
Exemplos de respostas bem-sucedidas
XML format
HTTP/1.1 200 OK
Content-Type:application/xml
<?xml version="1.0" encoding="UTF-8" ?>
<DescribeSQLLogRecordsResponse>
<PageNumber>1</PageNumber>
<TotalRecordCounts>1</TotalRecordCounts>
<ItemsCounts>1</ItemsCounts>
<SQLItems>
<SQLItem>
<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>
</SQLItem>
</SQLItems>
<RequestId>08A3B71B-FE08-4B03-974F-CC7EA6DB1828</RequestId>
</DescribeSQLLogRecordsResponse>
JSON format
HTTP/1.1 200 OK
Content-Type:application/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"
}
Códigos de erro
Para obter a lista de códigos de erro, consulte Códigos de erro do serviço.