

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Logs compatíveis e campos descobertos
<a name="CWL_AnalyzeLogData-discoverable-fields"></a>

CloudWatch O Logs Insights oferece suporte a diferentes tipos de registros. Para cada registro enviado para um grupo de registros da classe Standard no Amazon CloudWatch Logs, o CloudWatch Logs Insights gera automaticamente cinco campos do sistema: 
+ `@message` contém o evento de log bruto não avaliado. Isso é o equivalente ao `message` campo em [InputLogevent](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_InputLogEvent.html).
+ `@timestamp` contém o timestamp do evento contido no campo `timestamp` do evento de log. Isso é o equivalente ao `timestamp` campo em [InputLogevent](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_InputLogEvent.html).
+ `@ingestionTime`contém a hora em que o CloudWatch Logs recebeu o evento de log.
+ `@logStream` contém o nome do fluxo de logs ao qual o evento de log foi adicionado. Os fluxos de logs agrupam logs pelo mesmo processo que os gerou.
+ `@log` é um identificador de grupo de logs na forma de `{{account-id}}:{{log-group-name}}`. Ao consultar vários grupos de logs, isso pode ser útil para identificar a que grupo de logs um determinado evento pertence.
+ `@entity` contém JSON nivelado relacionado a entidades para o recurso de [telemetria relacionado ao Explore](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ExploreRelated.html).

  Por exemplo, esse JSON pode representar uma entidade.

  ```
  {
    "Entity": {
      "KeyAttributes": {
        "Type": "Service",
        "Name": "PetClinic"
      },
      "Attributes": {
        "PlatformType": "AWS::EC2",
        "EC2.InstanceId": "i-1234567890123"
      }
    }
  }
  ```

  Para essa entidade, os campos extraídos do sistema seriam os seguintes:

  ```
  @entity.KeyAttributes.Type = Service
  @entity.KeyAttributes.Name = PetClinic
  @entity.Attributes.PlatformType = AWS::EC2
  @entity.Attributes.EC2.InstanceId = i-1234567890123
  ```

**nota**  
A descoberta de campos só é compatível com os grupos de logs da classe de logs Padrão. Para obter mais informações sobre classes de logs, consulte [Classes de logs](CloudWatch_Logs_Log_Classes.md).

CloudWatch O Logs Insights insere o símbolo **@** no início dos campos que ele gera.

Para muitos tipos de registro, o CloudWatch Logs também descobre automaticamente os campos de registro contidos nos registros. Esses campos de descoberta automática são mostrados na tabela a seguir.

Para outros tipos de registros com campos que o CloudWatch Logs Insights não descobre automaticamente, você pode usar o `parse` comando para extrair e criar campos extraídos para uso nessa consulta. Para obter mais informações, consulte [CloudWatch Sintaxe de consulta de linguagem do Logs Insights](CWL_QuerySyntax.md).

Se o nome de um campo de registro descoberto começar com o `@` caractere, o CloudWatch Logs Insights o exibirá com um adicional `@` anexado ao início. Por exemplo, se um nome de campo de log for `@example.com`, o nome desse campo será exibido como `@@example.com`.

**nota**  
Com exceção de `@message`, `@timestamp` ou `@log`, é possível criar índices de campo para campos descobertos. Para ter mais informações sobre índices de campo, consulte [Crie índices de campo para melhorar o desempenho da consulta e reduzir o volume de escaneamento](CloudWatchLogs-Field-Indexing.md). 


| Tipo de log | Campos de log descobertos | 
| --- | --- | 
| Logs de fluxo do Amazon VPC | `@timestamp`, `@logStream`, `@message`, `accountId`, `endTime`, `interfaceId`, `logStatus`, `startTime`, `version`, `action`, `bytes`, `dstAddr`, `dstPort`, `packets`, `protocol`, `srcAddr`, `srcPort`<br />  | 
| Logs do Route 53 | `@timestamp`, `@logStream`, `@message`, `edgeLocation`, `ednsClientSubnet`, `hostZoneId`, `protocol`, `queryName`, `queryTimestamp`, `queryType`, `resolverIp`, `responseCode`, `version` | 
| Logs do Lambda | `@timestamp`, `@logStream`, `@message`, `@requestId`, `@duration, ``@billedDuration`, `@type`, `@maxMemoryUsed`, `@memorySize`<br />Se uma linha de log do Lambda contiver um ID de rastreamento do X-Ray, ela também incluirá os seguintes campos: `@xrayTraceId` e `@xraySegmentId`.<br />CloudWatch O Logs Insights descobre automaticamente os campos de log nos registros do Lambda, mas somente para o primeiro fragmento JSON incorporado em cada evento de log. Se um evento de log do Lambda contiver vários fragmentos JSON, será possível analisar e extrair os campos de log usando o comando `parse`. Para obter mais informações, consulte [Campos em logs JSON](#CWL_AnalyzeLogData-discoverable-JSON-logs). | 
| CloudTrail troncos<br />Logs em formato JSON | Para obter mais informações, consulte [Campos em logs JSON](#CWL_AnalyzeLogData-discoverable-JSON-logs). | 
| Outros tipos de log | `@timestamp`, `@ingestionTime`, `@logStream`, `@message`, `@log`. | 

## Campos em logs JSON
<a name="CWL_AnalyzeLogData-discoverable-JSON-logs"></a>

Com o CloudWatch Logs Insights, você usa a notação de pontos para representar campos JSON. Esta seção contém um exemplo de evento JSON e trecho de código que mostra como você pode acessar campos JSON usando notação de ponto.

**Exemplo: evento JSON**

```
{
    "eventVersion": "1.0",
    "userIdentity": {
        "type": "IAMUser",
        "principalId": "EX_PRINCIPAL_ID",
        "arn": "arn: aws: iam: : 123456789012: user/Alice",
        "accessKeyId": "EXAMPLE_KEY_ID",
        "accountId": "123456789012",
        "userName": "Alice"
    },
    "eventTime": "2014-03-06T21: 22: 54Z",
    "eventSource": "ec2.amazonaws.com",
    "eventName": "StartInstances",
    "awsRegion": "us-east-2",
    "sourceIPAddress": "192.0.2.255",
    "userAgent": "ec2-api-tools1.6.12.2",
    "requestParameters": {
        "instancesSet": {
            "items": [
                {
                    "instanceId": "i-abcde123"
                }
            ]
        }
    },
    "responseElements": {
        "instancesSet": {
            "items": [
                {
                    "instanceId": "i-abcde123",
                    "currentState": {
                        "code": 0,
                        "name": "pending"
                    },
                    "previousState": {
                        "code": 80,
                        "name": "stopped"
                    }
                }
            ]
        }
    }
}
```

O exemplo de evento JSON contém um objeto chamado `userIdentity`. `userIdentity` contém um campo chamado `type`. Para representar o valor de `type` com notação de ponto, você usa `userIdentity.type`.

O exemplo de evento JSON contém matrizes que se nivelam em listas de nomes e valores de campos aninhados. Para representar o valor de `instanceId` para o primeiro item em `requestParameters.instancesSet`, use `requestParameters.instancesSet.items.0.instanceId`. O número `0` que é colocado antes do campo `instanceID` refere-se à posição dos valores para o campo `items`. O exemplo a seguir contém um trecho de código que mostra como você pode acessar campos JSON aninhados em um evento de log JSON.

**Exemplo: consulta**

```
fields @timestamp, @message
| filter requestParameters.instancesSet.items.0.instanceId="i-abcde123"
| sort @timestamp desc
```

O trecho de código mostra uma consulta que usa notação de ponto com o comando `filter` para acessar o valor do campo JSON aninhado `instanceId`. A consulta filtra as mensagens para as quais o valor de `instanceId` é igual a `"i-abcde123"` e retorna todos os eventos de log que contêm o valor especificado.

**nota**  
CloudWatch O Logs Insights pode extrair no máximo 200 campos de eventos de log de um log JSON. Para os campos adicionais que não são extraídos, você pode usar o comando `parse` para extrair os campos do evento de log não analisado bruto no campo de mensagem. Para obter mais informações sobre o `parse` comando, consulte [Sintaxe de consulta](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html) no Guia do CloudWatch usuário da Amazon.