Obtém dados quentes dos logs de auditoria de SQL.
Descrição da operação
Antes de chamar esta API, certifique-se de atender aos seguintes requisitos:
-
Use a versão mais recente do Alibaba Cloud SDK ou do DAS SDK.
-
Ao usar um SDK para chamar o serviço DAS, especifique a região como cn-shanghai.
-
Mecanismos compatíveis: PolarDB MySQL, ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL e ApsaraDB RDS for SQLServer.
-
Ative a indexação de logs para a instância.
A hora de início da consulta deve estar dentro dos últimos 7 dias. A duração da consulta não pode exceder 1 dia. A API retorna até 10.000 registros.
Experimente agora
Testar
Autorização RAM
|
Ação |
Nível de acesso |
Tipo de recurso |
Chave de condição |
Ação dependente |
|
hdm:GetDasSQLLogHotData |
get |
*All Resource
|
Nenhuma | Nenhuma |
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Descrição |
Exemplo |
| InstanceId |
string |
Sim |
O ID da instância de banco de dados. |
rm-2ze1jdv45i7l6**** |
| Start |
integer |
Sim |
O início do intervalo de tempo a ser consultado. Este valor deve ser um timestamp Unix em milissegundos. Nota
Você pode consultar apenas os dados gerados após a ativação do DAS Enterprise Edition. A hora de início não pode ser anterior a sete dias antes da hora atual. |
1684734297000 |
| End |
integer |
Sim |
O fim do intervalo de tempo a ser consultado. Este valor deve ser um timestamp Unix em milissegundos. Nota
A hora de término deve ser posterior à hora de início. O intervalo de tempo não pode exceder um dia. |
1684820697000 |
| QueryKeyword |
string |
Não |
A palavra-chave da consulta. Nota
A pesquisa aproximada é compatível. Você pode especificar até 10 palavras-chave. Separe várias palavras-chave com um espaço. Por exemplo: a1 b2 c3. |
a1 b2 |
| AccountName |
string |
Não |
A conta do banco de dados. Nota
Você pode especificar várias contas de banco de dados. Separe várias contas com um espaço. Por exemplo: user1 user2 user3. |
testuser |
| DBName |
string |
Não |
O nome do banco de dados. Nota
Você pode especificar vários nomes de banco de dados. Separe vários nomes com um espaço. Por exemplo: DB1 DB2 DB3. |
testDB |
| HostAddress |
string |
Não |
O endereço IP do cliente. Nota
Você pode especificar vários endereços IP de cliente. Separe vários endereços IP com um espaço. Por exemplo: IP1 IP2 IP3. |
47.100.XX.XX |
| LogicalOperator |
string |
Não |
O operador lógico a ser usado com várias palavras-chave. Valores válidos:
|
or |
| MaxLatancy |
integer |
Não |
O tempo máximo de execução em microssegundos. Retorna instruções SQL que têm um tempo de execução menor que este valor. |
100 |
| MaxScanRows |
integer |
Não |
O número máximo de linhas verificadas. Retorna instruções SQL que verificaram menos do que este número de linhas. |
10000 |
| MinLatancy |
integer |
Não |
O tempo mínimo de execução em microssegundos. Retorna instruções SQL com um tempo de execução maior ou igual a este valor. |
10 |
| MinScanRows |
integer |
Não |
O número mínimo de linhas verificadas. Retorna instruções SQL que verificaram pelo menos este número de linhas. |
10 |
| SqlType |
string |
Não |
O tipo de SQL. Valores válidos:
|
select |
| State |
string |
Não |
O estado de execução. Defina este parâmetro como 0 para consultar instruções SQL executadas com sucesso. Você também pode especificar um código de erro para consultar as instruções SQL correspondentes. |
0 |
| ThreadID |
string |
Não |
O ID do thread. Nota
Você pode especificar vários IDs de thread. Separe vários IDs com um espaço. Por exemplo: 657 658 659. |
657 |
| PageNumbers |
integer |
Não |
O número da página a ser retornado. As páginas começam em 1. O valor padrão é 1. |
2 |
| MaxRecordsPerPage |
integer |
Não |
O número máximo de entradas por página. Valores válidos: 5 a 100. |
10 |
| SortKey |
string |
Não |
A chave de ordenação. Valores válidos:
|
ScanRows |
| SortMethod |
string |
Não |
A ordem de classificação. Valores válidos:
|
ASC |
| ChildDBInstanceIDs |
string |
Não |
O ID do nó. Nota
Este parâmetro é obrigatório se a instância de banco de dados for um cluster PolarDB for MySQL. |
pi-bp179lg03445l**** |
| Role |
string |
Não |
Um parâmetro reservado. |
None |
| TraceId |
string |
Não |
Um parâmetro reservado. |
None |
| MinRows |
integer |
Não |
Um parâmetro reservado. |
None |
| MaxRows |
integer |
Não |
Um parâmetro reservado. |
None |
| MinSpillCnt |
integer |
Não |
Um parâmetro reservado. |
None |
| MaxSpillCnt |
integer |
Não |
Um parâmetro reservado. |
None |
| TransactionId |
string |
Não |
O ID da transação. |
0 |
| Fail |
string |
Não |
O código de erro de execução de SQL. Você pode chamar a operação GetAsyncErrorRequestStatByCode para obter o código de erro. |
1064 |
Elementos de resposta
|
Elemento |
Tipo |
Descrição |
Exemplo |
|
object |
|||
| Code |
string |
O código de status. |
200 |
| Message |
string |
A mensagem de resposta. Nota
Se a solicitação for bem-sucedida, Successful será retornado. Se a solicitação falhar, uma mensagem de erro será retornada, que pode incluir um código de erro. |
Successful |
| RequestId |
string |
O ID exclusivo da solicitação gerado pela Alibaba Cloud. |
0A74B755-98B7-59DB-8724-1321B394**** |
| Success |
string |
Indica se a solicitação foi bem-sucedida:
|
true |
| Data |
object |
Os dados retornados. |
|
| List |
array<object> |
Uma lista dos dados retornados. |
|
|
object |
Os dados de insight e auditoria de SQL. |
||
| Latancy |
integer |
The latency, in microseconds. |
10000 |
| Ext |
string |
A reserved parameter. |
None |
| ExecuteTime |
string |
The UTC time when the execution was recorded, formatted as |
2023-05-23 T12:11:20Z |
| OriginTime |
string |
The precise UTC time when the execution was recorded, formatted as |
2023-05-23 T12:11:20.999Z |
| HostAddress |
string |
The client IP address. |
47.100.XX.XX |
| UpdateRows |
integer |
The number of updated rows. |
30 |
| LogicRead |
integer |
The number of logical reads. |
12 |
| SQLText |
string |
The SQL statement. |
select 1 |
| LockTime |
integer |
The lock wait time, in microseconds. |
1 |
| ScanRows |
integer |
The number of scanned rows. |
29 |
| ThreadID |
integer |
The thread ID. |
657 |
| State |
string |
The execution status. A value of 0 indicates success. Any other value is an error code. |
0 |
| DBName |
string |
The database name. |
testDB |
| SqlType |
string |
The SQL type. Valid values:
|
select |
| AccountName |
string |
The database account. |
testuser |
| PhysicSyncRead |
integer |
The number of physical synchronous reads. |
0 |
| PhysicAsyncRead |
integer |
The number of physical asynchronous reads. |
0 |
| TransactionId |
string |
The transaction ID. |
0 |
| ReturnRows |
integer |
The number of returned rows. |
1 |
| NodeId |
string |
The node ID. |
pi-bp120roy76f3qbd84 |
| Total |
integer |
O número total de registros. |
20 |
| PageNo |
integer |
O número da página. |
2 |
| PageSize |
integer |
O tamanho da página. |
10 |
| Extra |
any |
Um parâmetro reservado. |
None |
Exemplos
Resposta de sucesso
JSON formato
{
"Code": "200",
"Message": "Successful",
"RequestId": "0A74B755-98B7-59DB-8724-1321B394****",
"Success": "true",
"Data": {
"List": [
{
"Latancy": 10000,
"Ext": "None",
"ExecuteTime": "2023-05-23 T12:11:20Z",
"OriginTime": "2023-05-23 T12:11:20.999Z",
"HostAddress": "47.100.XX.XX",
"UpdateRows": 30,
"LogicRead": 12,
"SQLText": "select 1",
"LockTime": 1,
"ScanRows": 29,
"ThreadID": 657,
"State": "0",
"DBName": "testDB",
"SqlType": "select",
"AccountName": "testuser",
"PhysicSyncRead": 0,
"PhysicAsyncRead": 0,
"TransactionId": "0",
"ReturnRows": 1,
"NodeId": "pi-bp120roy76f3qbd84"
}
],
"Total": 20,
"PageNo": 2,
"PageSize": 10,
"Extra": "None"
}
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|---|---|---|---|
| 400 | InvalidParams | The request parameters are invalid. | |
| 403 | NoPermission | You are not authorized to do this action. |
Consulte Códigos de Erro para uma lista completa.
Notas de versão
Consulte Notas de Versão para uma lista completa.