Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Log konsumsi melalui titik akhir HTTP
Amazon CloudWatch Logs menyediakan endpoint HTTP yang memungkinkan Anda mengirim log langsung ke CloudWatch Log menggunakan permintaan HTTP POST sederhana. Titik akhir ini mendukung otentikasi token sigV4 dan pembawa.
penting
Sebaiknya gunakan otentikasi SiGv4 untuk semua beban kerja produksi yang memungkinkan integrasi AWS SDK. SiGv4 menggunakan kredensil jangka pendek dan memberikan postur keamanan terkuat. Otentikasi token pembawa (kunci API) ditujukan untuk skenario di mana SigV4 tidak layak, seperti penerusan log pihak ketiga yang tidak mendukung integrasi SDK. AWS Untuk informasi selengkapnya, lihat Alternatif untuk kunci akses jangka panjang di Panduan Pengguna IAM.
CloudWatch Log mendukung titik akhir konsumsi HTTP berikut:
| Titik akhir | Jalan | Content-Type | Format |
|---|---|---|---|
| OpenTelemetry Logs | /v1/logs |
application/json atau application/x-protobuf |
OTLP JSON atau Protobuf |
| HLC Logs | /services/collector/event |
application/json |
Format HLC |
| ND-JSON Logs | /ingest/bulk |
application/json atau application/x-ndjson |
JSON yang dibatasi baris baru |
| Structured JSON Logs | /ingest/json |
application/json |
JSON objek atau array |
Perilaku umum
Semua titik akhir konsumsi HTTP berbagi perilaku berikut:
Autentikasi
Semua titik akhir mendukung otentikasi SIgV4 dan token pembawa:
SiGv4 (disarankan) - AWS Penandatanganan Versi Tanda Tangan Standar 4. Gunakan SiGv4 setiap kali aplikasi atau infrastruktur Anda mendukung AWS SDK atau dapat menandatangani permintaan. SiGv4 menggunakan kredensil jangka pendek dan merupakan metode otentikasi yang paling aman.
-
Token pembawa — Gunakan
Authorization: Bearer <ACWL token>header.Token harus berupa token pembawa ACWL yang valid. Untuk petunjuk penyiapan, lihatMenyiapkan otentikasi token pembawa.
Memerlukan izin
logs:PutLogEventsdanlogs:CallWithBearerTokenIAM.
Grup log dan aliran log
Disediakan melalui header:
x-aws-log-groupdanx-aws-log-streamParameter kueri juga
?logGroup=<name>&logStream=<name>didukung pada semua titik akhir kecuali OTLP.Anda tidak dapat menggunakan parameter kueri dan header untuk parameter yang sama.
Baik grup log dan aliran log diperlukan.
Respons
Sukses:
HTTP 200dengan tubuh{}Kesalahan validasi:
HTTP 400Kegagalan autentikasi:
HTTP 401
Perbandingan titik akhir konsumsi HTTP
| Fitur | Log HLC | Log ND-JSON | Log JSON Terstruktur | OpenTelemetry Log |
|---|---|---|---|---|
| Jalan | /services/collector/event |
/ingest/bulk |
/ingest/json |
/v1/logs |
| Content-Type | application/json |
application/json atau application/x-ndjson |
application/json |
application/json atau application/x-protobuf |
| Bidang stempel waktu | "time"(detik) |
"timestamp"(milidetik) |
"timestamp"(milidetik) |
"timeUnixNano"(nanodetik) |
| Bidang yang diperlukan | "event" |
Tidak ada | Tidak ada | Struktur OTLP () "resourceLogs" |
| Respon keberhasilan sebagian | Tidak | Ya | Ya | Ya |
| Dukungan parameter kueri | Ya | Ya | Ya | Tidak (hanya header) |
| Metadata entitas | Ya | Ya | Ya | Tidak |
| Menerima primitif | Tidak | Ya | Tidak | Tidak |
| Penguraian berbasis garis | Tidak | Ya | Tidak | Tidak |
| Dukungan Protobuf | Tidak | Tidak | Tidak | Ya |
| Retry-After header | Tidak | Tidak | Tidak | Ya |
Memilih titik akhir
Menggunakan format HLC? Gunakan Log HLC. Muatan HLC Anda yang ada berfungsi dengan sedikit perubahan.
line-by-lineLog streaming? Gunakan Log ND-JSON. Terbaik untuk saluran pipa log yang memancarkan satu peristiwa per baris. Paling fleksibel - menerima jenis nilai JSON apa pun.
Mengirim muatan JSON terstruktur? Gunakan Log JSON Terstruktur. Terbaik untuk aplikasi yang menghasilkan objek atau array JSON yang terbentuk dengan baik.
Sudah menggunakan OpenTelemetry? Gunakan OpenTelemetry Log. Menerima format OTLP JSON atau Protobuf dan mendukung respons keberhasilan sebagian dengan semantik coba lagi.