Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Ingestion de journaux via des points de terminaison HTTP
Amazon CloudWatch Logs fournit des points de terminaison HTTP qui vous permettent d'envoyer des journaux directement à CloudWatch Logs à l'aide de simples requêtes HTTP POST. Ces points de terminaison prennent en charge à la fois l'authentification SigV4 et l'authentification par jeton porteur.
Important
Nous recommandons d'utiliser l'authentification SigV4 pour toutes les charges de travail de production où l'intégration du AWS SDK est possible. Le SigV4 utilise des informations d'identification à court terme et fournit la meilleure posture de sécurité. L'authentification par jeton porteur (clé API) est destinée aux scénarios dans lesquels SigV4 n'est pas réalisable, tels que les redirecteurs de journaux tiers qui ne prennent pas en charge AWS l'intégration du SDK. Pour plus d'informations, consultez la section Alternatives aux clés d'accès longue durée dans le guide de l'utilisateur IAM.
CloudWatch Logs prend en charge les points de terminaison d'ingestion HTTP suivants :
| Endpoint | Chemin | Content-Type | Format |
|---|---|---|---|
| OpenTelemetry Logs | /v1/logs |
application/json ou application/x-protobuf |
OTLP JSON ou Protobuf |
| HLC Logs | /services/collector/event |
application/json |
Format HLC |
| ND-JSON Logs | /ingest/bulk |
application/json ou application/x-ndjson |
JSON délimité par un caractère de saut de ligne |
| Structured JSON Logs | /ingest/json |
application/json |
Objet ou tableau JSON |
Comportement courant
Tous les points de terminaison d'ingestion HTTP partagent le comportement suivant :
Authentification
Tous les points de terminaison prennent en charge à la fois l'authentification SigV4 et l'authentification par jeton porteur :
SigV4 (recommandé) — AWS Signature standard version 4. Utilisez SigV4 chaque fois que votre application ou infrastructure prend en charge le AWS SDK ou peut signer des demandes. SigV4 utilise des informations d'identification à court terme et constitue la méthode d'authentification la plus sécurisée.
-
Jeton porteur — Utilisez l'
Authorization: Bearer <ACWL token>en-tête.Le jeton doit être un jeton porteur ACWL valide. Pour les instructions de configuration, voirConfiguration de l'authentification par jeton porteur.
Nécessite les autorisations
logs:PutLogEventsetlogs:CallWithBearerTokenIAM.
Groupe de journaux et flux de journaux
Fourni via des en-têtes :
x-aws-log-groupetx-aws-log-stream?logGroup=<name>&logStream=<name>Les paramètres de requête sont également pris en charge sur tous les points de terminaison, à l'exception de l'OTLP.Vous ne pouvez pas utiliser à la fois les paramètres de requête et les en-têtes pour le même paramètre.
Le groupe de journaux et le flux de journaux sont requis.
Réponse
Succès :
HTTP 200avec le corps{}Erreurs de validation :
HTTP 400Défaillances d'authentification :
HTTP 401
Comparaison des points de terminaison d'ingestion HTTP
| Fonctionnalité | Journaux HLC | Journaux ND-JSON | Journaux JSON structurés | OpenTelemetry Journaux |
|---|---|---|---|---|
| Chemin | /services/collector/event |
/ingest/bulk |
/ingest/json |
/v1/logs |
| Content-Type | application/json |
application/json ou application/x-ndjson |
application/json |
application/json ou application/x-protobuf |
| Champ d'horodatage | "time"(secondes) |
"timestamp"(millisecondes) |
"timestamp"(millisecondes) |
"timeUnixNano"(nanosecondes) |
| Champs obligatoires | "event" |
Aucune | Aucune | Structure OTLP () "resourceLogs" |
| Réponse de réussite partielle | Non | Oui | Oui | Oui |
| Support des paramètres de requête | Oui | Oui | Oui | Non (en-têtes uniquement) |
| Métadonnées de l'entité | Oui | Oui | Oui | Non |
| Accepte les primitives | Non | Oui | Non | Non |
| Analyse syntaxique basée sur les lignes | Non | Oui | Non | Non |
| Support Protobuf | Non | Non | Non | Oui |
| En-tête Retry-After | Non | Non | Non | Oui |
Choix d'un point de terminaison
Vous utilisez le format HLC ? Utilisez les journaux HLC. Vos charges utiles HLC existantes fonctionnent avec un minimum de modifications.
Des line-by-line journaux de streaming ? Utilisez les journaux ND-JSON. Idéal pour les pipelines de logs qui émettent un événement par ligne. Très flexible : accepte n'importe quel type de valeur JSON.
Vous envoyez des charges utiles JSON structurées ? Utilisez des journaux JSON structurés. Idéal pour les applications qui produisent des objets ou des tableaux JSON bien formés.
Vous l'utilisez déjà OpenTelemetry ? Utilisez OpenTelemetry les journaux. Accepte le format OTLP JSON ou Protobuf et prend en charge les réponses de réussite partielles avec une sémantique de nouvelle tentative.