Topik ini menjelaskan instruksi Bahasa Pemrosesan Log Layanan Sederhana (SPL) dari Simple Log Service.
Jenis parameter
Tabel berikut menjelaskan jenis parameter yang digunakan dalam instruksi SPL.
Jenis parameter | Deskripsi |
Bool | Parameter Boolean. Saat menggunakan SPL, parameter ini berfungsi sebagai saklar. |
Char | Parameter karakter ASCII. Harus diapit oleh tanda kutip tunggal (''). Contohnya, |
Integer | Parameter integer. |
String | Parameter string. Harus diapit oleh tanda kutip tunggal (''). Contohnya, |
RegExp | Parameter ekspresi reguler RE2. Harus diapit oleh tanda kutip tunggal (''). Contohnya, Untuk informasi lebih lanjut tentang sintaksis, lihat Sintaksis. |
JSONPath | Parameter jalur JSON. Harus diapit oleh tanda kutip tunggal (''). Contohnya, Untuk informasi lebih lanjut tentang sintaksis, lihat JsonPath. |
Field | Parameter nama bidang. Contohnya, Jika nama bidang mengandung karakter khusus selain huruf, angka, dan garis bawah, apit nama bidang tersebut dengan tanda kutip ganda (""). Contohnya, Catatan Untuk informasi lebih lanjut tentang sensitivitas huruf pada nama bidang, lihat Referensi umum. |
FieldPattern | Kombinasi antara nama bidang dan karakter wildcard, atau parameter nama bidang. Karakter wildcard (*) didukung, yang cocok dengan nol atau lebih karakter. Harus diapit oleh tanda kutip ganda (""). Contohnya, Catatan Untuk informasi lebih lanjut tentang sensitivitas huruf pada nama bidang, lihat Referensi umum. |
SPLExp | Parameter ekspresi SPL. |
SQLExp | Parameter ekspresi SQL. |
Daftar instruksi SPL
Kategori instruksi | Nama instruksi | Deskripsi | Transformasi data | Write Processor | Prosesor konsumsi | Mode pemindaian (SCAN) | Logtail Collection |
Instruksi kontrol | Mendefinisikan dataset bernama. Untuk informasi lebih lanjut tentang dataset SPL, lihat Referensi umum. | ||||||
Instruksi operasi bidang | Menyimpan bidang yang cocok dengan pola tertentu dan menamai ulang bidang tertentu. Selama eksekusi, semua ekspresi penyimpanan bidang diproses sebelum ekspresi penamaan ulang. | ||||||
Menghapus bidang yang cocok dengan pola tertentu dan menyimpan semua bidang lainnya. | |||||||
Menamai ulang bidang tertentu dan menyimpan semua bidang lainnya. | |||||||
Memperluas objek JSON lapisan pertama dari bidang tertentu untuk menghasilkan beberapa hasil. | |||||||
Instruksi perhitungan SQL untuk data terstruktur | Membuat bidang baru dengan menghitung hasil ekspresi SQL. Untuk daftar fungsi SQL yang didukung, lihat Daftar fungsi SQL yang didukung oleh SPL. | ||||||
Menyaring data berdasarkan ekspresi SQL dan menyimpan entri data yang memenuhi ekspresi. Untuk daftar fungsi SQL yang didukung oleh instruksi where, lihat Daftar fungsi SQL yang didukung oleh SPL. | |||||||
Instruksi ekstraksi data semi-terstruktur | Mengekstrak informasi yang cocok dengan grup ekspresi reguler dari bidang tertentu. | ||||||
Mengekstrak informasi dalam format CSV dari bidang tertentu. | |||||||
Mengekstrak informasi JSON lapisan pertama dari bidang tertentu. | |||||||
Mengekstrak informasi pasangan kunci-nilai dari bidang tertentu. | |||||||
Instruksi transformasi data baru | Mengemas bidang log dan mengeluarkannya ke bidang baru melalui serialisasi JSON. Instruksi ini cocok untuk skenario yang memerlukan transmisi terstruktur, seperti membangun badan permintaan API. | ||||||
Mengonversi format log ke format penyimpanan metrik. | |||||||
Memproses lebih lanjut data metrik yang ada, seperti menambahkan, memodifikasi, atau menghapus tag. | |||||||
Instruksi agregasi | Instruksi untuk analisis statistik log, mirip dengan fungsi agregat SQL seperti | ||||||
Mengurutkan hasil kueri. Mendukung pengurutan nilai bidang atau hasil statistik secara menaik ( | |||||||
Membatasi jumlah baris log yang dikembalikan dalam hasil kueri. Ini adalah instruksi inti untuk mengontrol volume data. Menggunakan instruksi |
Ikhtisar Fungsi
Instruksi SPL mendukung sebagian besar fungsi SQL. Namun, ketersediaan serta skenario penggunaan untuk fungsi tertentu dijelaskan dalam dokumentasi fungsi terkait.
Klasifikasi | Deskripsi | Fungsi umum |
Menjalankan perhitungan ringkasan pada set data target untuk menghasilkan satu hasil statistik. | ||
Memproses data teks, termasuk pencarian, penggantian, substring, penggabungan, dan format. | ||
Melakukan konversi format, pengelompokan, dan agregasi pada tanggal dan waktu dalam log. | ||
Memproses objek JSON, termasuk ekstraksi, transformasi, dan statistik. | ||
Pencocokan pola dan pemrosesan teks. | ||
Menghitung perubahan relatif dalam data deret waktu. | ||
Lakukan penambahan, penghapusan, modifikasi, kueri, penelusuran, dan transformasi pada array. | ||
Operasikan pasangan kunci-nilai. | ||
Perhitungan numerik, transformasi untuk desensitisasi, bilangan acak, fungsi trigonometri, dan lainnya. | ||
Analisis distribusi data dan perhitungan numerik. | ||
Menangani konversi antara tipe data. | ||
Aggregasi atau pengurutan berdasarkan jendela data. | ||
Menguraikan dan menghitung alamat IP. | ||
Menguraikan struktur URL. | ||
Memprediksi data atau mengisi nilai yang hilang. | ||
Memproses tipe data biner. | ||
Langsung beroperasi pada bit biner. | ||
Memproses geometri spasial. | ||
Analisis lokasi geografis dan perhitungan peta. | ||
Representasi dan konversi warna. | ||
Lakukan pemrosesan statistik pada set data Tingkat Tinggi, mengorbankan akurasi untuk menghemat memori. | ||
Menentukan hubungan ukuran parameter, berlaku untuk semua tipe data yang dapat dibandingkan (double, bigint, varchar, timestamp, dan date). | ||
Menggabungkan beberapa kondisi Boolean untuk mengontrol alur logika. | ||
Mengonversi unit ukuran data atau interval waktu. | ||
Menganalisis perilaku pengguna, lalu lintas aplikasi, konversi tujuan produk, dan data lainnya. | ||
Mendefinisikan ekspresi lambda dalam pernyataan analitik SQL dan SPL, serta meneruskannya ke fungsi tertentu untuk memperkaya ekspresi fungsi. | ||
Mengembalikan nilai berbeda berdasarkan cabang kondisional. |