O ActionTrail registra eventos dos últimos 90 dias. Para consultar e analisar eventos mais antigos, crie uma trilha para enviar os eventos ao Simple Log Service (SLS) e use instruções SQL no SLS.
Sintaxe de instruções SQL
As instruções SQL usam o seguinte formato: <Query statement> | <Analytic statement>.
A tabela a seguir lista as instruções de consulta e análise para cada método de consulta compatível.
|
Método de consulta |
Instrução de consulta |
Instrução analítica |
|
Consulta de eventos |
|
|
|
Consulta de resumo de eventos |
|
|
|
Consulta de eventos Insight |
|
|
Exemplos de instruções SQL
-
Exemplo 1: Consultar todos os eventos de gerenciamento do tipo gravação
* AND "event.eventCategory": Management AND "event.eventRW": Write | select "event.acsRegion" as acsRegion, "event.apiVersion" as apiVersion, "event.eventId" as eventId, "event.eventName" as eventName, "event.eventRW" as eventRW, "event.eventSource" as eventSource, from_unixtime(__time__) as eventTime, "event.eventType" as eventType, "event.eventVersion" as eventVersion, "event.errorCode" as errorCode, "event.errorMessage" as errorMessage, "event.requestId" as requestId, "event.requestParameterJson" as requestParameterJson, "event.resourceName" as resourceName, "event.resourceType" as resourceType, "event.serviceName" as serviceName, "event.sourceIpAddress" as sourceIpAddress, "event.userAgent" as userAgent, "event.userIdentity.accessKeyId" as accessKeyId, "event.userIdentity.accountId" as accountId, "event.userIdentity.principalId" as principalId, "event.userIdentity.type" as type, "event.userIdentity.userName" as userName -
Exemplo 2: Consultar os resumos de todos os eventos de gerenciamento do tipo gravação
NotaSe você especificar um intervalo de tempo longo para a consulta, adicione
LIMIT Nà instrução para retornar apenasNeventos. Por exemplo, definirLIMIT 20retorna 20 eventos.* AND "event.eventCategory": Management AND "event.eventRW": Write | SELECT "event.serviceName" AS serviceName, "event.eventName" AS eventName, "event.eventRW" AS eventRW, "event.sourceIpAddress" AS sourceIpAddress, "event.resourceName" AS resourceName, "event.resourceType" AS resourceType, "event.userIdentity.userName" AS userName, "event.userIdentity.type" AS userType, "event.userIdentity.accessKeyId" AS accessKeyId, "event.acsRegion" AS eventRegion, COUNT("event.eventId") AS n, date_trunc('hour', __time__) AS time GROUP BY time, serviceName, eventName, eventRW, sourceIpAddress, resourceType, resourceName, accessKeyId, userType, userName, eventRegion ORDER BY time DESC LIMIT 20 -
Exemplo 3: Consultar todas as anomalias de IP em eventos Insight
* AND "event.eventCategory": Insight AND event.insightDetails.insightType: IpInsight | select from_unixtime(__time__) as eventTime, "event.acsRegion" as eventRegion, "event.insightDetails.sourceIpAddress" as sourceIpAddress, "event.insightDetails.insightContext.statistics.insightCount" as count