Menulis data log ke logstore yang ditentukan.
Deskripsi operasi
OpenAPI SDK tidak mendukung operasi ini. Gunakan Simple Log Service (SLS) SDK sebagai gantinya.
-
Layanan memeriksa format data log untuk setiap permintaan PutLogs. Jika ada entri log yang tidak valid, seluruh permintaan akan gagal dan tidak ada log yang ditulis.
-
Operasi ini hanya mendukung data log dalam format protobuf. Data log disusun sebagai LogGroup.
-
Log dapat ditulis dalam dua mode:
-
Mode LoadBalance: Data secara otomatis ditulis ke semua shard yang dapat ditulis dalam sebuah logstore. Metode ini menyediakan ketersediaan tinggi dan cocok untuk skenario konsumsi data yang tidak memerlukan urutan tertentu. Sintaks permintaan:
POST /logstores/logstoreName/shards/lb HTTP/1.1 Authorization: LOG yourAccessKeyId:yourSignature Content-Type: application/x-protobuf Content-Length: Content Length Content-MD5: Content MD5 Date: GMT Date Host: ProjectName.Endpoint x-log-apiversion: 0.6.0 x-log-bodyrawsize: BodyRawSize x-log-compresstype: lz4 x-log-signaturemethod: hmac-sha1 <Compressed log data in protobuf format> -
Mode KeyHash: Tambahkan parameter key ke URL untuk menentukan shard mana yang menerima data. Parameter ini bersifat opsional. Jika Anda tidak menetapkan parameter ini, sistem secara otomatis beralih ke mode load balancing. Misalnya, sematkan producer, seperti sebuah instance, ke shard tertentu berdasarkan hash namanya. Hal ini memastikan bahwa data yang ditulis ke dan dikonsumsi dari shard diurutkan secara ketat. Selama operasi merge dan split, sebuah key dikaitkan hanya dengan satu shard pada satu waktu. Sintaks permintaan:
POST /logstores/logstoreName/shards/route?key=14d2f850ad6ea48e46e4547edbbb27e0 Authorization: LOG yourAccessKeyId:yourSignature Content-Type: application/x-protobuf Content-Length: Content Length Content-MD5: Content MD5 Date: GMT Date Host: ProjectName.Endpoint x-log-apiversion: 0.6.0 x-log-bodyrawsize: BodyRawSize x-log-compresstype: lz4 x-log-signaturemethod: hmac-sha1 <Compressed log data in protobuf format>
-
-
Ukuran maksimum log mentah untuk setiap permintaan PutLogs adalah 10 MB. Value dari setiap log dalam sebuah log group tidak boleh melebihi 1 MB. Versi SDK yang lebih lama mungkin memiliki batasan yang berbeda. Upgrade ke versi SDK terbaru.
-
SLS menyediakan contoh cara menggunakan PutLogs dengan SDK Java dan Python.
Data protobuf
Bagian ini menjelaskan field untuk data log terkompresi dalam format protobuf. Untuk informasi lebih lanjut, lihat Model data dan Pengkodean data.
Log
| Parameter | Tipe data | Wajib | Deskripsi |
| Time | Integer | Ya | Waktu log. Nilainya adalah timestamp UNIX yang mewakili jumlah detik yang telah berlalu sejak 1970-1-1 00:00:00 UTC. |
| Contents | List | Ya | Daftar field log. Daftar tersebut harus berisi minimal satu elemen. Untuk tipe elemen, lihat tabel Content di bawah ini. |
Content
| Parameter | Tipe data | Wajib | Deskripsi |
| Key | String | Ya | Nama key kustom. |
| Value | String | Ya | Nilai yang sesuai dengan key kustom. |
LogTag
| Parameter | Tipe data | Wajib | Deskripsi |
| Key | String | Ya | Nama key kustom. |
| Value | String | Ya | Nilai yang sesuai dengan key kustom. |
LogGroup
| Parameter | Tipe data | Wajib | Deskripsi |
| Logs | List | Ya | Daftar log. Untuk setiap elemen, lihat tabel Log. |
| Topic | String | Tidak | Topik dari log. Gunakan field kustom ini untuk membedakan data log dengan fitur yang berbeda. |
| Source | String | Tidak | Sumber log, seperti alamat IP dari mesin yang menghasilkan log. |
| LogTags | List | Ya | Daftar tag log. Untuk setiap elemen, lihat tabel LogTag. |
Coba sekarang
Test
RAM authorization
Sintaks permintaan
POST /logstores/{logstore}/shards/lb HTTP/1.1
Path Parameters
|
Parameter |
Type |
Required |
Description |
Example |
| logstore |
string |
Yes |
Nama logstore. |
ali-test-logstore |
Parameter permintaan
|
Parameter |
Type |
Required |
Description |
Example |
| project |
string |
Yes |
Nama proyek. |
ali-test-project |
| x-log-compresstype |
string |
Yes |
Jenis kompresi log. Nilai yang valid: lz4 dan gzip. |
lz4 |
| body | LogGroup |
No |
Data log terkompresi dalam format protobuf. |
Header permintaan
Untuk informasi tentang header permintaan umum dari API SLS, lihat Header permintaan umum.
Contoh permintaan
POST /logstores/sls-test-logstore/shards/lb
{
"Content-Length": 118,
"Content-Type":"application/x-protobuf",
"x-log-bodyrawsize":1356,
"Host": "ali-test-project.cn-hangzhou-devcommon-intranet.sls.aliyuncs.com",
"Content-MD5":"6554BD042149C844761C2C094A8FECCE",
"Date":"Thu, 12 Nov 2015 06:54:26 GMT",
"x-log-apiversion": "0.6.0",
"x-log-compresstype":"lz4"
"x-log-signaturemethod": "hmac-sha1",
"Authorization":"LOG yourAccessKeyId:yourSignature"
}
<Data biner log dalam format protobuf yang dikompresi menggunakan lz4>
Elemen respons
|
Element |
Type |
Description |
Example |
Tidak ada yang didefinisikan.
Header respons
Operasi PutLogs tidak memiliki header respons khusus. Untuk informasi tentang header respons umum dari API SLS, lihat Header respons umum.
Elemen respons
Kode status HTTP 200 menunjukkan bahwa permintaan berhasil. Tidak ada elemen respons yang dikembalikan.
Contoh
Respons sukses
JSONformat
{}
Kode kesalahan
Lihat Error Codes untuk daftar lengkap.
Catatan rilis
Lihat Release Notes untuk daftar lengkap.