

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Invio di log utilizzando l'endpoint OTLP (Logs) OpenTelemetry
<a name="CWL_HTTP_Endpoints_OTLP"></a>

L'endpoint OpenTelemetry Logs (`/v1/logs`) accetta i dati di log del OpenTelemetry protocollo (OTLP) con codifica JSON o Protobuf. [Per informazioni dettagliate sull'endpoint OTLP, inclusi configurazione e utilizzo, consulta Inviare metriche e tracce a with. CloudWatch OpenTelemetry](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-OTLPEndpoint.html)

Se utilizzi l'autenticazione con token al portatore, completa i passaggi di configurazione prima di procedere. [Configurazione dell'autenticazione con token al portatore](CWL_HTTP_Endpoints_BearerTokenAuth.md)

## Formato della richiesta
<a name="CWL_OTLP_Format"></a>
+ Metodo: `POST`
+ Tipo di contenuto: o `application/json` `application/x-protobuf`
+ Gruppo di log: solo `x-aws-log-group` intestazione (parametro di query non supportato)
+ Flusso di registro: intestazione `x-aws-log-stream`

## Richiesta di esempio
<a name="CWL_OTLP_Example"></a>

```
curl -X POST "https://logs.<region>.amazonaws.com/v1/logs" \
  -H "Authorization: Bearer ACWL<token>" \
  -H "Content-Type: application/json" \
  -H "x-aws-log-group: MyLogGroup" \
  -H "x-aws-log-stream: MyLogStream" \
  -d '{
  "resourceLogs": [
    {
      "resource": {
        "attributes": [
          {
            "key": "service.name",
            "value": { "stringValue": "my-service" }
          }
        ]
      },
      "scopeLogs": [
        {
          "scope": {
            "name": "my-library",
            "version": "1.0.0"
          },
          "logRecords": [
            {
              "timeUnixNano": "1741900000000000000",
              "severityNumber": 9,
              "severityText": "INFO",
              "body": {
                "stringValue": "User logged in successfully"
              },
              "attributes": [
                {
                  "key": "user.id",
                  "value": { "stringValue": "12345" }
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}'
```

## Risposte
<a name="CWL_OTLP_Responses"></a>

**Operazione riuscita (tutti gli eventi sono accettati):**

```
HTTP 200 OK
{}
```

**Successo parziale (alcuni eventi rifiutati):**

```
{
  "partialSuccess": {
    "rejectedLogRecords": 5,
    "errorMessage": "{\"tooOldLogEventCount\": 3, \"tooNewLogEventCount\": 1, \"expiredLogEventCount\": 1}"
  }
}
```

Quando la richiesta Content-Type è`application/x-protobuf`, la risposta viene restituita come messaggio `ExportLogsServiceResponse` protobuf serializzato con gli stessi campi.

## Comportamenti specifici di OTLP
<a name="CWL_OTLP_Specific_Behaviors"></a>

I seguenti comportamenti sono specifici dell'endpoint OTLP e non sono presenti negli altri endpoint di ingestione HTTP:
+ **Intestazione Retry-After**: inclusa nelle risposte 503 e 429 per indicare quando il client deve riprovare.