Registro de chamadas da API do OpenSearch Sem Servidor em log usando o AWS CloudTrail
O Amazon OpenSearch Sem Servidor é integrado ao AWS CloudTrail, um serviço que fornece um registro das ações realizadas por um usuário, por uma função ou por um serviço da AWS no Sem Servidor.
O CloudTrail captura todas as chamadas de API para o OpenSearch Sem Servidor como eventos. As chamadas capturadas incluem chamadas da seção do Serverless do console do OpenSearch Service e chamadas de código para as operações de API do OpenSearch Sem Servidor.
Se você criar uma trilha, poderá habilitar a entrega contínua de eventos do CloudTrail para um bucket do Amazon S3, incluindo eventos para o OpenSearch Sem Servidor. Se você não configurar uma trilha, ainda poderá visualizar os eventos mais recentes no console do CloudTrail em Histórico de eventos.
Usando as informações coletadas pelo CloudTrail, é possível determinar a solicitação feita para o OpenSearch Sem Servidor, o endereço IP no qual a solicitação foi feita, quem fez a solicitação, quando ela foi feita, além de detalhes adicionais.
Para saber mais sobre o CloudTrail, consulte o Guia do usuário do AWS CloudTrail.
Informações do OpenSearch Sem Servidor no CloudTrail
O CloudTrail é habilitado em sua Conta da AWS quando ela é criada. Quando ocorre uma atividade no OpenSearch de tecnologia sem servidor, essa atividade é registrada em um evento do CloudTrail com outros eventos de serviço da AWS no Histórico de eventos. Você pode visualizar, pesquisar e baixar eventos recentes em sua Conta da AWS. Para obter mais informações, consulte Como visualizar eventos com o histórico de eventos do CloudTrail.
Para obter um registro contínuo de eventos da sua Conta da AWS, incluindo aqueles do OpenSearch Sem Servidor, crie uma trilha. Uma trilha permite que o CloudTrail entregue arquivos de log a um bucket do Amazon S3. Por padrão, quando você cria uma trilha no console, ela é aplicada a todas as Regiões da AWS.
A trilha registra eventos de todas as regiões na partição da AWS e entrega os arquivos de log no bucket do Amazon S3 que você especifica. Além disso, é possível configurar outros AWS serviços para melhor analisar e agir de acordo com dados coletados do evento nos logs CloudTrail. Para obter mais informações, consulte:
Todas as ações do OpenSearch Sem Servidor são registradas em log pelo CloudTrail e estão documentadas na Referência da API do OpenSearch Sem Servidor. Por exemplo, as chamadas para as APIs CreateCollection, ListCollections e DeleteCollection geram entradas nos arquivos de log do CloudTrail.
Cada entrada de log ou evento contém informações sobre quem gerou a solicitação. As informações de identidade ajudam a determinar:
-
Se a solicitação foi feita com credenciais de usuário-raiz ou usuário do AWS Identity and Access Management (IAM).
-
Se a solicitação foi feita com credenciais de segurança temporárias de um perfil ou de um usuário federado.
-
Se a solicitação foi feita por outro AWS serviço.
Para obter mais informações, consulte Elemento userIdentity do CloudTrail.
Eventos de dados do OpenSearch sem Servidor no CloudTrail
Os eventos de dados fornecem informações sobre as operações de recursos realizadas em um recurso (por exemplo, pesquisar ou indexar para uma coleção do OpenSearch sem Servidor). Também são conhecidas como operações de plano de dados. Eventos de dados geralmente são atividades de alto volume. Por padrão, o CloudTrail não registra eventos de dados em log. O Histórico de eventos do CloudTrail não registra eventos de dados.
Há cobranças adicionais para eventos de dados. Para obter mais informações sobre os preços do CloudTrail, consulte Preços do AWS CloudTrail
É possível registrar eventos de dados em log para os tipos de recurso do AWS::AOSS::Collection usando o console do CloudTrail, a AWS CLI ou operações de API do CloudTrail. Para obter mais informações sobre como registrar eventos de dados em log, consulte Registrar eventos de dados com o Console de gerenciamento da AWS e Registrar eventos de dados com a AWS Command Line Interface no Guia do usuário do AWS CloudTrail.
É possível configurar seletores de eventos avançados para filtrar os campos eventName, readOnly e resources.ARN para registrar em log somente os eventos que são importantes para você. Para obter mais informações sobre esses campos, consulte AdvancedFieldSelector na Referência de API do AWS CloudTrail.
Entender as entradas de evento de dados do OpenSearch Sem Servidor
No seguinte exemplo:
-
O campo
requestParameterscontém detalhes sobre a chamada de API feita para a coleção. Ele inclui o caminho básico da solicitação (sem parâmetros de consulta). -
O campo
responseElementsinclui um código de status que indica o resultado da solicitação ao modificar recursos. Esse código de status ajuda você a saber se suas alterações foram processadas com sucesso ou se precisam de atenção. -
O OpenSearch sem Servidor registra eventos de dados do CloudTrail em log somente para solicitações que concluíram com sucesso a autenticação do IAM.
{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROA123456789EXAMPLE", "arn": "arn:aws::sts::111122223333:assumed-role/Admin/user-role", "accountId": "111122223333", "accessKeyId": "access-key", "userName": "", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROA123456789EXAMPLE", "arn": "arn:aws:iam::111122223333:role/Admin", "accountId": "111122223333", "userName": "Admin" }, "attributes": { "creationDate": "2025-08-15T22:57:38Z", "mfaAuthenticated": "false" }, "sourceIdentity": "", "ec2RoleDelivery": "", "assumedRoot": "" }, "identityProvider": "", "credentialId": "" }, "eventTime": "2025-08-15T22:58:00Z", "eventSource": "aoss.amazonaws.com", "eventName": "Search", "awsRegion": "us-east-1", "sourceIPAddress": "AWS Internal", "userAgent": "python-requests/2.32.3", "requestParameters": { "pathPrefix": "/_search" }, "responseElements": null, "requestID": "2cfee788-EXAM-PLE1-8617-4018cEXAMPLE", "eventID": "48d43617-EXAM-PLE1-9d9c-f7EXAMPLE", "readOnly": true, "resources": [ { "type": "AWS::AOSS::Collection", "ARN": "arn:aws:aoss:us-east-1:111122223333:collection/aab9texampletu45xh77" } ], "eventType": "AwsApiCall", "managementEvent": false, "recipientAccountId": "111122223333", "eventCategory": "Data" } ] }
Entender as entradas de evento de gerenciamento do OpenSearch sem Servidor
Uma trilha é uma configuração que permite a entrega de eventos como arquivos de log a um bucket Amazon S3 especificado. Os arquivos de log do CloudTrail contêm uma ou mais entradas de log.
Um evento representa uma solicitação única de qualquer fonte. Isso inclui informações sobre a ação solicitada, a data e hora da ação, os parâmetros de solicitação, e assim por diante. Os arquivos de log do CloudTrail não são um rastreamento de pilha ordenada de chamadas de API pública. Dessa forma, eles não são exibidos em uma ordem específica.
O exemplo a seguir mostra uma entrada de log do CloudTrail que demonstra a ação CreateCollection.
{ "eventVersion":"1.08", "userIdentity":{ "type":"AssumedRole", "principalId":"AIDACKCEVSQ6C2EXAMPLE", "arn":"arn:aws:iam::123456789012:user/test-user", "accountId":"123456789012", "accessKeyId":"access-key", "sessionContext":{ "sessionIssuer":{ "type":"Role", "principalId":"AIDACKCEVSQ6C2EXAMPLE", "arn":"arn:aws:iam::123456789012:role/Admin", "accountId":"123456789012", "userName":"Admin" }, "webIdFederationData":{ }, "attributes":{ "creationDate":"2022-04-08T14:11:34Z", "mfaAuthenticated":"false" } } }, "eventTime":"2022-04-08T14:11:49Z", "eventSource":"aoss.amazonaws.com", "eventName":"CreateCollection", "awsRegion":"us-east-1", "sourceIPAddress":"AWS Internal", "userAgent":"aws-cli/2.1.30 Python/3.8.8 Linux/5.4.176-103.347.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/aoss.create-collection", "errorCode":"HttpFailureException", "errorMessage":"An unknown error occurred", "requestParameters":{ "accountId":"123456789012", "name":"test-collection", "description":"A sample collection", "clientToken":"d3a227d2-a2a7-49a6-8fb2-e5c8303c0718" }, "responseElements": null, "requestID":"12345678-1234-1234-1234-987654321098", "eventID":"12345678-1234-1234-1234-987654321098", "readOnly":false, "eventType":"AwsApiCall", "managementEvent":true, "recipientAccountId":"123456789012", "eventCategory":"Management", "tlsDetails":{ "clientProvidedHostHeader":"user.aoss-sample.us-east-1.amazonaws.com" } }