SPL menyediakan instruksi untuk operasi field, ekstraksi data, penyaringan, agregasi, dan transformasi data. Setiap instruksi mendukung skenario pemrosesan tertentu, seperti transformasi data, Ingest Processor, Consumer Processor, mode scan, dan koleksi Logtail.
Jenis parameter
Instruksi SPL menggunakan jenis parameter berikut.
|
Jenis parameter |
Deskripsi |
|
Bool |
Parameter Boolean yang berfungsi sebagai sakelar dalam SPL. |
|
Char |
Parameter karakter ASCII, diapit tanda petik tunggal (''). Contoh: |
|
Integer |
Parameter bilangan bulat. |
|
String |
Parameter string, diapit tanda petik tunggal (''). Contoh: |
|
RegExp |
Parameter ekspresi reguler RE2, diapit tanda petik tunggal (''). Contoh: Detail sintaks RE2: Syntax. |
|
JSONPath |
Parameter path JSON, diapit tanda petik tunggal (''). Contoh: Detail sintaks JSONPath: JsonPath. |
|
Field |
Parameter nama field. Contoh: Apit nama field yang mengandung karakter khusus (selain huruf, angka, dan garis bawah) dengan tanda petik ganda (""). Contoh: Catatan
Aturan sensitivitas huruf besar/kecil pada nama field didokumentasikan dalam Referensi Umum. |
|
FieldPattern |
Nama field atau pola wildcard. Karakter wildcard (*) cocok dengan nol atau lebih karakter. Apit pola dengan tanda petik ganda (""). Contoh: Catatan
Aturan sensitivitas huruf besar/kecil pada nama field didokumentasikan dalam Referensi Umum. |
|
SPLExp |
Parameter ekspresi SPL. |
|
SQLExp |
Parameter ekspresi SQL. |
Daftar instruksi SPL
|
Kategori instruksi |
Nama instruksi |
Deskripsi |
Transformasi data |
Ingest Processor |
Consumer Processor |
Mode Scan (SCAN) |
Koleksi Logtail |
|
Instruksi kontrol |
Menentukan set data bernama. Detail set data SPL dijelaskan dalam Referensi Umum. |
Ya |
× |
× |
√ |
× |
|
|
Instruksi operasi field |
Mempertahankan field yang sesuai dengan pola tertentu dan mengganti nama field yang ditentukan. Ekspresi retensi field diproses sebelum ekspresi penggantian nama. |
Didukung |
Didukung |
Didukung |
Didukung |
Didukung |
|
|
Menghapus field yang sesuai dengan pola tertentu dan mempertahankan semua field lainnya. |
Didukung |
Didukung |
Didukung |
Didukung |
✓ |
||
|
Mengganti nama field yang ditentukan dan mempertahankan semua field lainnya. |
Didukung |
Didukung |
Didukung |
Didukung |
Didukung |
||
|
Memperluas objek JSON tingkat atas dari field tertentu menjadi beberapa hasil. |
Didukung |
× |
Didukung |
Tidak didukung |
× |
||
|
Instruksi perhitungan SQL untuk data terstruktur |
Membuat field baru dari hasil ekspresi SQL. Fungsi SQL yang didukung tercantum dalam Daftar Fungsi SQL yang Didukung oleh SPL. |
Didukung |
Didukung |
Didukung |
Didukung |
Didukung |
|
|
Menyaring data berdasarkan ekspresi SQL dan mempertahankan entri yang sesuai. Fungsi SQL yang didukung tercantum dalam Daftar Fungsi SQL yang Didukung oleh SPL. |
Didukung |
✓ |
Didukung |
Didukung |
Didukung |
||
|
Instruksi ekstraksi data semi-terstruktur |
Mengekstraksi informasi yang sesuai dengan grup ekspresi reguler dari field tertentu. |
√ |
√ |
Didukung |
✓ |
Didukung |
|
|
Mengekstraksi informasi dalam format CSV dari field tertentu. |
√ |
Didukung |
Didukung |
√ |
Didukung |
||
|
Mengekstraksi field JSON tingkat atas dari field tertentu. |
Didukung |
Didukung |
√ |
√ |
Didukung |
||
|
Mengekstraksi informasi pasangan kunci-nilai dari field tertentu. |
Didukung |
Didukung |
Didukung |
Didukung |
Didukung |
||
|
Instruksi transformasi data baru |
Mengemas field log ke dalam field baru melalui serialisasi JSON. Cocok untuk skenario transmisi terstruktur seperti pembuatan body permintaan API. |
✓ |
× |
✓ |
Didukung |
× |
|
|
Mengonversi format log ke format penyimpanan deret waktu. |
Didukung |
× |
× |
× |
× |
||
|
Memproses data metrik yang sudah ada, seperti menambahkan, mengubah, atau menghapus tag. |
Didukung |
× |
× |
× |
× |
||
|
Instruksi agregasi |
Menjalankan analisis statistik pada field log, mirip dengan fungsi agregat SQL seperti |
× |
× |
Tidak didukung |
Didukung |
× |
|
|
Mengurutkan hasil kueri berdasarkan nilai field atau hasil statistik secara ascending ( |
× |
× |
× |
Didukung |
× |
||
|
Membatasi jumlah baris log yang dikembalikan dalam hasil kueri. Gunakan |
× |
× |
× |
Didukung |
× |
Ikhtisar fungsi
Instruksi SPL mendukung sebagian besar fungsi SQL. Ketersediaan dan skenario penerapan masing-masing fungsi dijelaskan dalam dokumentasi terkait.
|
Kategori |
Deskripsi |
Fungsi umum |
|
Menghitung satu hasil dari sekumpulan nilai input. |
||
|
Menemukan, mengganti, mengekstraksi, menggabungkan, dan memformat data teks. |
||
|
Mengonversi, memotong, dan mengagregasi nilai tanggal dan waktu. |
||
|
Mengekstraksi, mentransformasi, dan mengkueri data dari objek dan array JSON. |
||
|
Mencocokkan, mengekstraksi, dan mengganti teks menggunakan ekspresi reguler. |
||
|
Membandingkan data deret waktu antar periode waktu berbeda. |
||
|
Mengakses, menyaring, dan mentransformasi elemen array. |
||
|
Beroperasi pada pasangan kunci-nilai (map). |
||
|
Membulatkan, menghasilkan bilangan acak, dan melakukan perhitungan trigonometri. |
||
|
Menganalisis distribusi data dengan fungsi korelasi, regresi, dan probabilitas. |
||
|
Mengonversi nilai dari satu tipe data ke tipe data lain. |
||
|
Menghitung agregasi atau peringkat pada jendela geser baris. |
||
|
Mengurai dan memproses alamat IP. |
||
|
Mengekstraksi komponen dari URL. |
||
|
Mengaproksimasi jumlah unik, persentil, dan histogram untuk dataset besar. |
||
|
Beroperasi pada data biner. |
||
|
Menjalankan operasi bitwise pada bilangan bulat. |
||
|
Beroperasi pada objek geometri spasial. |
||
|
Menjalankan analisis dan perhitungan geospasial. |
||
|
Membuat dan memanipulasi representasi warna. |
||
|
Mengestimasi kardinalitas pada dataset besar dengan memori minimal. |
||
|
Membandingkan nilai lintas tipe (double, bigint, varchar, timestamp, date) dan mengembalikan boolean. |
||
|
Menggabungkan beberapa ekspresi boolean untuk mengontrol alur logika. |
||
|
Mengonversi ukuran data atau interval waktu antar satuan berbeda. |
||
|
Melacak tindakan pengguna berurutan untuk analisis funnel konversi. |
||
|
Menentukan fungsi inline untuk operasi array orde tinggi dalam SQL atau SPL. |
||
|
Mengembalikan nilai berbeda berdasarkan kondisi tertentu. |