Metode pengumpulan log inkremental tradisional tidak cocok untuk mengumpulkan file statis yang sudah ada dalam tugas seperti analisis historis, migrasi data, atau pemrosesan batch. Fitur pengumpulan log satu kali mengatasi keterbatasan ini. Anda dapat menggunakan Konsol atau API untuk mengirimkan konfigurasi pengumpulan ke kelompok mesin secara batch dan mengumpulkan konten file statis tertentu dalam satu operasi. Tugas tersebut akan berhenti secara otomatis setelah pengumpulan selesai.
Cakupan
LoongCollector 3.3 atau versi yang lebih baru.
Fitur ini mendukung pengumpulan log dari host pada platform Linux dan Windows, tetapi tidak mendukung skenario kontainer.
Alur kerja konfigurasi pengumpulan
Preparations: Buat Project dan Logstore. Project adalah unit manajemen sumber daya untuk mengisolasi log dari layanan yang berbeda, sedangkan Logstore adalah unit penyimpanan log.
Konfigurasikan kelompok mesin (Instal LoongCollector): Instal LoongCollector pada server Anda dan tambahkan server tersebut ke kelompok mesin. Kelompok mesin memungkinkan Anda mengelola node pengumpulan secara terpusat, mendistribusikan konfigurasi, serta memantau status server.
Buat dan konfigurasikan aturan pengumpulan file satu kali:
Global and input configurations: Tentukan nama konfigurasi pengumpulan serta sumber dan cakupan pengumpulan log.
Log processing and structuring: Konfigurasikan aturan pemrosesan berdasarkan format log.
Log multi-baris: Digunakan untuk log yang mencakup beberapa baris, seperti stack exception Java atau traceback Python. Anda dapat menggunakan ekspresi reguler awal-baris untuk mengidentifikasi setiap log dan menggabungkan baris-baris berurutan dari log yang sama menjadi satu entri log lengkap.
Penguraian terstruktur: Gunakan plugin parsing, seperti ekspresi reguler, pemisah, atau mode NGINX, untuk mengurai string mentah menjadi pasangan kunci-nilai terstruktur. Setiap field kemudian dapat dikueri dan dianalisis secara independen.
Log filtering: Konfigurasikan blacklist pengumpulan dan aturan penyaringan konten untuk hanya menyimpan konten log yang valid serta mengurangi transmisi dan penyimpanan data berlebih.
Log categorization: Gunakan topik untuk secara fleksibel membedakan log dari layanan, server, atau jalur sumber yang berbeda.
Configure query and analysis: Sistem secara default mengaktifkan indeks teks penuh untuk mendukung pencarian kata kunci. Anda dapat mengaktifkan indeks bidang agar memungkinkan kueri dan analisis berbasis bidang terstruktur, yang meningkatkan efisiensi pencarian.
Verify collection results: Setelah menyelesaikan konfigurasi, verifikasi apakah log berhasil dikumpulkan. Jika Anda mengalami masalah, seperti tidak ada data yang dikumpulkan, kegagalan detak jantung, atau error parsing, lihat bagian FAQ.
Persiapan
Sebelum mengumpulkan log, Anda harus merencanakan dan membuat Project serta Logstore untuk mengelola dan menyimpan log. Jika resource tersebut sudah tersedia, Anda dapat melewati langkah ini dan melanjutkan ke Konfigurasikan kelompok mesin (Instal LoongCollector).
Buat Project
Buat Logstore
Langkah 1: Konfigurasikan kelompok mesin (Instal LoongCollector)
Setelah menyelesaikan persiapan, instal LoongCollector pada server Anda dan tambahkan ke kelompok mesin.
Langkah instalasi berikut hanya berlaku jika sumber log adalah Instance ECS Alibaba Cloud, dan instance tersebut berada dalam Akun Alibaba Cloud dan wilayah yang sama dengan Project Simple Log Service.
Jika Instance ECS dan Project Anda berada dalam akun atau wilayah yang berbeda, atau jika sumber log adalah server yang dikelola sendiri, lihat Instal dan konfigurasikan LoongCollector.
Prosedur:
Pada halaman
Logstores, klik
di sebelah kiri nama Logstore target untuk memperluasnya.Klik . Pada tab One-time Logtail Configurations, klik Add Logtail Configuration.
Pada dialog Quick Data Import, klik Import Data pada kartu One-time File Collection - Host.
Pada halaman Machine Group Configuration, konfigurasikan parameter berikut:
Scenario: Host
Installation Environment: ECS
Konfigurasikan Kelompok Mesin: Berdasarkan status instalasi LoongCollector dan konfigurasi kelompok mesin pada server target, lakukan salah satu operasi berikut:
Jika LoongCollector telah diinstal dan ditambahkan ke kelompok mesin, pilih dari daftar Source Machine Group dan tambahkan ke daftar Applied Machine Groups. Anda tidak perlu membuatnya lagi.
Jika LoongCollector belum diinstal, klik Create Machine Group:
Langkah-langkah berikut memandu Anda melalui proses instalasi otomatis LoongCollector dan pembuatan kelompok mesin.
Sistem secara otomatis mencantumkan Instance ECS di wilayah yang sama dengan Project. Pilih satu atau beberapa instance dari mana Anda ingin mengumpulkan log.
Klik Install and Create as Machine Group. Sistem secara otomatis menginstal LoongCollector pada Instance ECS yang dipilih.
Konfigurasikan Name untuk kelompok mesin dan klik OK.
CatatanJika instalasi gagal atau tetap dalam status menunggu, periksa apakah wilayah ECS sama dengan wilayah Project.
Untuk menambahkan server yang telah menginstal LoongCollector ke kelompok mesin yang sudah ada, lihat Bagaimana cara menambahkan server ke kelompok mesin yang sudah ada?
Periksa Status Detak Jantung: Klik Next. Bagian Machine Group Heartbeat Status muncul. Periksa status Heartbeat. Jika statusnya OK, koneksi kelompok mesin normal. Klik Next untuk menuju halaman konfigurasi Logtail.
Jika statusnya FAIL, mungkin diperlukan waktu hingga dua menit agar detak jantung awal terbentuk. Tunggu sekitar dua menit lalu refresh status detak jantung. Jika status masih FAIL setelah merefresh halaman, lihat Detak jantung kelompok mesin adalah FAIL untuk informasi troubleshooting.
Langkah 2: Buat dan konfigurasikan aturan pengumpulan file satu kali
Setelah menginstal LoongCollector dan mengonfigurasi kelompok mesin, buka halaman Logtail Configuration untuk menentukan aturan pengumpulan dan pemrosesan log.
1. Konfigurasi global dan input
Tentukan nama konfigurasi pengumpulan serta sumber dan cakupan pengumpulan log.
Global Configurations:
Configuration Name: Nama kustom untuk konfigurasi pengumpulan. Harus unik dalam Project-nya dan tidak dapat diubah setelah pembuatan. Konvensi penamaan:
Hanya boleh berisi huruf kecil, angka, tanda hubung (-), dan garis bawah (_).
Harus dimulai dan diakhiri dengan huruf kecil atau angka.
Execution Timeout: Nilai default adalah 600 detik (10 menit). Rentangnya antara 600 hingga 604.800 detik (10 menit hingga 7 hari). Jika pengumpulan tidak selesai dalam waktu ini, tugas akan berhenti secara otomatis dan tidak mengumpulkan bagian yang tersisa.
PentingCatatan tentang pengiriman konfigurasi: Periode validitas konfigurasi diatur ulang saat Anda memperbaruinya. Untuk menghindari pengiriman ganda atau pelaporan data yang tidak diinginkan, pastikan cakupan kelompok mesin akurat dan waktu eksekusi tugas terakhir belum melebihi Execution Timeout.
Force Rerun on Update: Dinonaktifkan secara default.
Nonaktif:
Saat Anda memperbarui parameter konfigurasi pengumpulan selain Execution Timeout atau Input Configurations, sistem melanjutkan progres pengumpulan saat ini. Tugas pengumpulan tidak dimulai ulang, sehingga menjaga kontinuitas pengumpulan.
Jika Anda mengubah Execution Timeout atau Input Configurations, sistem akan memulai ulang tugas pengumpulan.
Aktif: Memaksa tugas pengumpulan dimulai ulang saat Anda memperbarui konfigurasi pengumpulan. Ini memastikan semua pemrosesan dan pelaporan data sesuai dengan perubahan terbaru. Catatan: Data yang dikumpulkan sebelum pembaruan tidak dihapus. Untuk menghapusnya, lihat Penghapusan lunak Simple Log Service.
Input Configurations:
Type: One-time File Collection (available for LoongCollector 3.3 and later).
File Path: Jalur untuk pengumpulan log.
CatatanDaftar file untuk pengumpulan satu kali dan ukuran tiap file ditentukan saat LoongCollector menarik konfigurasi. File baru atau konten yang ditambahkan ke file yang sudah ada tidak dikumpulkan.
Linux: Dimulai dengan "/", misalnya
/data/mylogs/**/*.log, yang menunjukkan semua file dengan ekstensi .log di direktori/data/mylogsdan subdirektorinya.Windows: Dimulai dengan huruf drive, misalnya
C:\Program Files\Intel\**\*.Log.
Maximum Directory Monitoring Depth: Kedalaman direktori maksimum yang dapat dicocokkan oleh karakter wildcard
**dalam File Path. Nilai default adalah 0, yang berarti hanya direktori saat ini yang dipantau.
2. Pemrosesan dan strukturisasi log
Dengan mengonfigurasi aturan pemrosesan log, Anda dapat mengubah log mentah yang tidak terstruktur menjadi data terstruktur yang dapat dicari, sehingga meningkatkan efisiensi kueri dan analisis log. Sebelum mengonfigurasi aturan, tambahkan contoh log:
Pada area Processing Configurations di halaman Logtail Configuration, klik Add Log Sample dan masukkan konten log yang akan dikumpulkan. Sistem mengidentifikasi format log berdasarkan contoh tersebut dan membantu Anda menghasilkan ekspresi reguler serta aturan parsing, yang menyederhanakan konfigurasi.
Skenario 1: Proses log multi-baris (seperti log stack Java)
Karena log seperti stack exception Java dan objek JSON sering kali mencakup beberapa baris, log tersebut terpecah menjadi beberapa catatan tidak lengkap dalam mode pengumpulan default. Hal ini menyebabkan hilangnya konteks. Untuk mencegahnya, Anda dapat mengaktifkan mode multi-baris dan mengonfigurasi ekspresi reguler awal-baris untuk menggabungkan baris-baris berurutan dari log yang sama menjadi satu entri log lengkap.
Contoh:
Log mentah tanpa pemrosesan apa pun | Dalam mode pengumpulan default, setiap baris dianggap sebagai log independen, sehingga memecah jejak stack dan kehilangan konteks | Dengan mode multi-baris diaktifkan, ekspresi reguler awal-baris mengidentifikasi log lengkap, sehingga mempertahankan struktur semantik penuhnya. |
|
|
|
Prosedur: Pada area Processing Configurations di halaman Logtail Configuration, aktifkan Multi-line Mode:
Type: Pilih Custom atau Multi-line JSON.
Custom: Jika format log mentah tidak tetap, Anda perlu mengonfigurasi Start-of-line Regular Expression untuk mengidentifikasi baris awal setiap log.
Start-of-line Regular Expression: Dapat dihasilkan secara otomatis atau dimasukkan secara manual. Ekspresi reguler harus mencocokkan satu baris data lengkap. Misalnya, ekspresi reguler yang cocok pada contoh sebelumnya adalah
\[\d+-\d+-\w+:\d+:\d+,\d+]\s\[\w+]\s.*.Hasilkan Otomatis: Klik Auto Generate Regular Expression. Lalu, pada kotak teks Log Sample, pilih konten log yang akan diekstraksi dan klik Generate Regex.
Masukan Manual: Klik Manually Enter Regular Expression. Setelah memasukkan ekspresi, klik Validate.
Multi-line JSON: Saat semua log mentah berada dalam format JSON standar, Simple Log Service secara otomatis menangani jeda baris dalam satu log JSON.
Handling Chunking Failures:
Discard: Jika segmen teks tidak cocok dengan aturan awal-baris, segmen tersebut dibuang.
Keep as single lines: Teks yang tidak cocok dipisah dan disimpan dalam mode baris tunggal aslinya.
Skenario 2: Log terstruktur
Saat log mentah berupa teks tidak terstruktur atau semi-terstruktur, seperti log akses NGINX atau log output aplikasi, kueri dan analisis langsung sering kali tidak efisien. Simple Log Service menyediakan berbagai plugin parsing data yang dapat secara otomatis mengonversi log mentah dengan format berbeda menjadi data terstruktur. Hal ini memberikan fondasi data yang kuat untuk analisis, pemantauan, dan peringatan selanjutnya.
Contoh:
Raw logs | Parsed logs |
| |
Prosedur: Pada area Processing Configurations di halaman Logtail Configuration:
Tambahkan Plugin Parsing: Klik Add Processing Plugin dan konfigurasikan plugin seperti parsing regex, parsing pemisah, atau parsing JSON berdasarkan format aktual. Contoh ini menggunakan pengumpulan log NGINX. Pilih .
NGINX Log Configuration: Salin sepenuhnya definisi
log_formatdari file konfigurasi server Nginx (nginx.conf) dan tempelkan ke kotak teks ini.Contoh:
log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$request_time $request_length ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent"';PentingDefinisi format di sini harus persis sama dengan format yang menghasilkan log di server. Jika tidak, parsing log akan gagal.
Parameter konfigurasi umum: Parameter berikut muncul di berbagai plugin parsing data, dan fungsinya konsisten.
Source Field: Menentukan nama field sumber yang akan diurai. Nilai default adalah
content, yaitu seluruh konten log yang dikumpulkan.Keep Source Field on Failure: Direkomendasikan. Jika log tidak dapat diurai dengan sukses oleh plugin (misalnya karena ketidakcocokan format), opsi ini memastikan konten log asli tidak hilang tetapi tetap disimpan sepenuhnya di field sumber yang ditentukan.
Keep Source Field on Success: Jika dipilih, konten log asli akan tetap disimpan meskipun log berhasil diurai.
3. Penyaringan log
Saat pengumpulan log, pengumpulan besar-besaran log bernilai rendah atau tidak relevan—seperti log tingkat DEBUG/INFO—tanpa seleksi tidak hanya membuang sumber daya penyimpanan dan meningkatkan biaya, tetapi juga memengaruhi efisiensi kueri serta menimbulkan risiko kebocoran data. Untuk mengatasinya, Anda dapat menerapkan kebijakan penyaringan detail halus untuk pengumpulan log yang efisien dan aman.
Kurangi biaya dengan penyaringan konten
Saring berdasarkan field konten log (misalnya, kumpulkan hanya log dengan level WARNING atau ERROR).
Contoh:
Log mentah tanpa pemrosesan apa pun | Kumpulkan hanya log |
| |
Prosedur: Pada area Processing Configurations di halaman Logtail Configuration:
Klik Add Processing Plugin dan pilih :
Field Name: Field log yang akan disaring.
Field Value: Ekspresi reguler yang digunakan untuk penyaringan. Hanya mendukung pencocokan penuh, bukan pencocokan kata kunci parsial.
Kontrol cakupan pengumpulan dengan blacklist
Gunakan mekanisme blacklist untuk mengecualikan direktori atau file tertentu guna mencegah log yang tidak relevan atau sensitif diunggah.
Prosedur: Pada area di halaman Logtail Configuration, aktifkan Collection Blacklist dan klik Add.
Mendukung pencocokan penuh dan pencocokan wildcard untuk direktori dan nama file. Hanya tanda bintang (*) dan tanda tanya (?) yang didukung sebagai karakter wildcard.
File Path Blacklist: Jalur file yang akan diabaikan. Contoh:
/home/admin/private*.log: Mengabaikan semua file di direktori/home/admin/yang diawali dengan "private" dan diakhiri dengan ".log"./home/admin/private*/*_inner.log: Mengabaikan file yang diakhiri "_inner.log" di direktori yang diawali "private" di bawah direktori/home/admin/.
File Blacklist: Konfigurasikan nama file yang akan diabaikan selama pengumpulan. Contoh:
app_inner.log: Mengabaikan semua file bernamaapp_inner.logselama pengumpulan.
Directory Blacklist: Jalur direktori tidak boleh diakhiri dengan garis miring (/). Contoh:
/home/admin/dir1/: Blacklist direktori tidak akan berlaku./home/admin/dir*: Mengabaikan file di semua subdirektori di bawah/home/admin/yang diawali dengan "dir"./home/admin/*/dir: Mengabaikan semua file di subdirektori bernama "dir" pada tingkat kedua di bawah direktori/home/admin/. Misalnya, file di direktori/home/admin/a/dirdiabaikan, sedangkan file di direktori/home/admin/a/b/dirdikumpulkan.
4. Kategorisasi log
Saat log dari beberapa aplikasi atau instans memiliki format yang sama tetapi jalur berbeda (seperti /apps/app-A/run.log dan /apps/app-B/run.log), sulit membedakan sumbernya selama pengumpulan. Dengan mengonfigurasi topik, Anda dapat membedakan log dari aplikasi, layanan, atau jalur yang berbeda secara logis, sehingga memungkinkan kategorisasi efisien dan kueri tepat di bawah penyimpanan terpadu.
Prosedur: Di , pilih metode pembuatan topik. Tiga jenis berikut didukung:
Machine Group Topic: Saat konfigurasi pengumpulan diterapkan ke beberapa kelompok mesin, LoongCollector secara otomatis menggunakan nama kelompok mesin tempat server tersebut berada sebagai nilai untuk field
__topic__. Cocok untuk skenario di mana log dibagi berdasarkan host.Custom: Formatnya adalah
customized://<custom_topic_name>, misalnyacustomized://app-login. Cocok untuk skenario topik statis dengan pengenal bisnis tetap.Extract from File Path: Mengekstraksi informasi kunci dari jalur lengkap file log untuk menandai sumber log secara dinamis. Cocok untuk situasi di mana beberapa pengguna atau aplikasi berbagi nama file log yang sama tetapi memiliki jalur berbeda. Saat beberapa pengguna atau layanan menulis log ke direktori tingkat atas yang berbeda, tetapi sub-jalur dan nama filenya sama, sumber tidak dapat dibedakan hanya berdasarkan nama file. Misalnya:
/data/logs ├── userA │ └── serviceA │ └── service.log ├── userB │ └── serviceA │ └── service.log └── userC └── serviceA └── service.logDalam kasus ini, Anda dapat mengonfigurasi Extract from File Path dan menggunakan ekspresi reguler untuk mengekstraksi informasi kunci dari jalur lengkap. Hasil yang cocok kemudian digunakan sebagai topik dan diunggah ke Logstore.
Aturan ekstraksi jalur file: Berdasarkan grup penangkapan ekspresi reguler
Saat mengonfigurasi ekspresi reguler, sistem secara otomatis menentukan format field output berdasarkan jumlah dan penamaan grup penangkapan. Aturannya sebagai berikut:
Dalam ekspresi reguler untuk jalur file, Anda perlu melakukan escape terhadap garis miring (/).
Jenis Grup Penangkap
Skenario
Bidang yang Dihasilkan
Contoh Regex
Jalur yang Cocok
Contoh Bidang yang Dihasilkan
Grup penangkapan tunggal (hanya satu
(.*?))Hanya satu dimensi yang diperlukan untuk membedakan sumber (seperti username atau lingkungan)
Menghasilkan field
__topic__\/logs\/(.*?)\/app\.log/logs/userA/app.log__topic__:userABeberapa grup penangkapan tak bernama (beberapa
(.*?))Beberapa dimensi diperlukan untuk membedakan sumber, tetapi label semantik tidak diperlukan
Menghasilkan field tag
__tag__:__topic_{i}__, di mana{i}adalah nomor urut grup penangkapan\/logs\/(.*?)\/(.*?)\/app\.log/logs/userA/svcA/app.log__tag__:__topic_1__userA;__tag__:__topic_2__svcABeberapa grup penangkapan bernama (menggunakan
(?P<name>.*?))Beberapa dimensi diperlukan untuk membedakan sumber, dan Anda ingin makna field jelas untuk memudahkan kueri dan analisis
Menghasilkan field tag
__tag__:{name}\/logs\/(?P<user>.*?)\/(?P<service>.*?)\/app\.log/logs/userA/svcA/app.log__tag__:user:userA;__tag__:service:svcA
Langkah 3: Konfigurasikan kueri dan analisis
Setelah menyelesaikan konfigurasi pemrosesan log dan plugin, klik Next untuk menuju halaman Query and Analysis Configuration:
Sistem secara default mengaktifkan indeks teks penuh, yang mendukung pencarian kata kunci pada konten log asli.
Untuk melakukan kueri berbasis bidang, tunggu hingga Preview Data dimuat di halaman, lalu klik Auto Generate Indexes. Simple Log Service akan menghasilkan indeks bidang berdasarkan entri pertama dalam data pratinjau.
Setelah menyelesaikan konfigurasi, klik Next untuk menyelesaikan seluruh proses pengumpulan.
Langkah 4: Verifikasi hasil pengumpulan
Setelah konfigurasi berlaku, buka halaman kueri dan analisis Logstore target dan klik Search & Analysis untuk melihat data log yang dikumpulkan.
FAQ
Siklus hidup konfigurasi pengumpulan satu kali
Setelah konfigurasi pengumpulan satu kali dibuat, konfigurasi tersebut memiliki karakteristik siklus hidup berikut:
Periode validitas pengiriman konfigurasi: Dalam 5 menit setelah konfigurasi dibuat, LoongCollector dapat menarik konfigurasi tersebut. Setelah 5 menit, instance LoongCollector baru tidak dapat memperoleh konfigurasi ini.
Penghapusan otomatis konfigurasi: Konfigurasi dihapus secara otomatis 7 hari setelah dibuat.
Eksekusi tugas: Pengumpulan diselesaikan dalam periode timeout eksekusi. Setelah timeout, tugas berhenti secara otomatis.
Apa perbedaan antara pengumpulan file satu kali dan metode pengumpulan file historis sebelumnya?
Metode lama untuk pengumpulan file historis tidak lagi direkomendasikan. Gunakan fitur baru untuk impor data historis. Dibandingkan dengan metode lama yang memerlukan pembuatan manual file konfigurasi, fitur pengumpulan file satu kali yang baru menawarkan peningkatan signifikan dalam efisiensi konfigurasi, keandalan, dan observabilitas. Perbandingan spesifiknya sebagai berikut:
Item Perbandingan | Metode lama untuk pengumpulan file historis | Pengumpulan file satu kali yang baru |
Metode Konfigurasi | Anda harus membuat file local_event.json di setiap host. Ini mengharuskan Anda melakukan operasi satu per satu di setiap mesin. | Anda dapat membuat konfigurasi menggunakan Konsol atau API dan mengirimkannya secara batch di tingkat kelompok mesin. |
Pencocokan File | Memerlukan entri manual jalur dan nama file. | Konfigurasi cepat mirip input_file, dengan dukungan penyaringan blacklist. |
Pemantauan Progres | Pelaporan tanpa status dan tanpa log lokal | Menyediakan checkpoint dengan pelacakan detail halus hingga offset pengumpulan saat ini untuk setiap file. |
Keandalan | Rendah. Merupakan proses terpisah tanpa kontrol resource atau checkpoint. | Tinggi. Menyediakan manajemen sumber daya tingkat pipeline standar, mendukung pembatasan kecepatan, tidak memengaruhi pengumpulan lain, dan mendukung transmisi yang dapat dilanjutkan. |
Fleksibilitas | Rendah. Anda harus menggunakan konfigurasi pengumpulan yang sudah ada. | Tinggi. Anda dapat mengatur konfigurasi pengumpulan dan memodifikasinya di tengah proses. |
Detak jantung kelompok mesin adalah FAIL
Periksa ID pengguna: Jika server Anda bukan Instance ECS, atau jika Instance ECS dan Project berada dalam Akun Alibaba Cloud yang berbeda, periksa apakah ID pengguna yang benar ada di direktori yang ditentukan. Jika tidak, jalankan perintah berikut untuk membuatnya secara manual.
Linux: Jalankan perintah
cd /etc/ilogtail/users/ && touch <uid>untuk membuat file ID pengguna.Windows: Buka direktori
C:\LogtailData\users\dan buat file kosong bernama<uid>.
Periksa ID kelompok mesin: Jika Anda menggunakan ID kustom saat membuat kelompok mesin, periksa apakah file
user_defined_idada di direktori yang ditentukan. Jika ada, periksa apakah isi file tersebut konsisten dengan ID kustom yang dikonfigurasi untuk kelompok mesin.Linux:
# Konfigurasikan ID kustom. Jika direktori tidak ada, buat secara manual. echo "user-defined-1" > /etc/ilogtail/user_defined_idWindows: Di direktori
C:\LogtailData, buat file baru bernamauser_defined_iddan tuliskan ID kustom ke dalamnya. (Jika direktori tidak ada, buat secara manual.)
Jika ID pengguna dan ID kelompok mesin sudah dikonfigurasi dengan benar, lihat Troubleshoot masalah kelompok mesin LoongCollector (Logtail) untuk investigasi lebih lanjut.
Bagaimana cara menambahkan server ke kelompok mesin yang sudah ada?
Saat Anda memiliki kelompok mesin yang sudah ada dan ingin menambahkan server baru—seperti Instance ECS yang baru dideploy atau server yang dikelola sendiri—ke dalamnya agar mewarisi konfigurasi pengumpulannya, Anda dapat mengikuti langkah-langkah berikut.
Lima menit setelah konfigurasi dibuat, mesin yang baru ditambahkan ke kelompok mesin tidak akan menerima konfigurasi pengumpulan. Untuk waktu spesifiknya, lihat penghitung mundur di bagian atas halaman konfigurasi pengumpulan.
Prasyarat:
Kelompok mesin yang sudah dikonfigurasi sudah ada.
LoongCollector telah diinstal di server baru.
Prosedur:
Lihat ID kelompok mesin target:
Di halaman Project target, klik
di panel navigasi kiri.Di halaman Machine Groups, klik nama kelompok mesin target.
Di halaman konfigurasi kelompok mesin, lihat ID kelompok mesin tersebut.
Lakukan operasi yang sesuai berdasarkan jenis ID:
CatatanSatu kelompok mesin tidak dapat berisi server Linux dan Windows sekaligus. Jangan mengonfigurasi ID kustom yang sama di server Linux dan Windows. Satu server dapat dikonfigurasi dengan beberapa ID kustom, dipisahkan dengan line feed.
Jenis 1: ID kelompok mesin adalah alamat IP
Di server, jalankan perintah berikut untuk membuka file
app_info.jsondan lihat nilaiip.cat /usr/local/ilogtail/app_info.jsonDi halaman konfigurasi kelompok mesin target, klik Modify dan masukkan alamat IP server tersebut. Pisahkan beberapa alamat IP dengan line feed.
Setelah konfigurasi selesai, klik Save dan konfirmasi status detak jantung. Setelah status detak jantung OK, server secara otomatis menerapkan konfigurasi pengumpulan kelompok mesin tersebut.
Jika status detak jantung FAIL, lihat Detak jantung kelompok mesin adalah FAIL untuk troubleshooting lebih lanjut.
Jenis 2: ID kelompok mesin adalah ID kustom
Bergantung pada sistem operasi, tuliskan string ID kustom yang konsisten dengan kelompok mesin target ke file yang ditentukan:
Jika direktori tidak ada, buat secara manual. Jalur dan nama file ditetapkan oleh Simple Log Service dan tidak dapat dikustomisasi.
Linux: Tulis string kustom ke file
/etc/ilogtail/user_defined_id.Windows: Tulis string kustom ke
C:\LogtailData\user_defined_id.
Lampiran: Penjelasan plugin parsing native
Parsing regex
Ekstrak field log menggunakan ekspresi reguler dan uraikan log menjadi pasangan kunci-nilai. Setiap field dapat dikueri dan dianalisis secara independen.
Contoh:
Log mentah tanpa pemrosesan apa pun | Menggunakan plugin parsing ekspresi reguler |
| |
Prosedur: Di bagian Processor Configurations pada halaman Logtail Configuration, klik Add Processor dan pilih :
Regular Expression: Ekspresi yang digunakan untuk mencocokkan log. Hasilkan secara otomatis atau masukkan secara manual:
Generasi otomatis:
Klik Generate.
Di Log Sample, pilih konten log yang akan diekstraksi.
Klik Generate Regular Expression.

Masukan manual: Manually Enter Regular Expression berdasarkan format log.
Setelah konfigurasi, klik Validate untuk menguji apakah ekspresi reguler dapat mengurai konten log dengan benar.
Extracted Field: Nama field (Key) yang sesuai dengan konten log yang diekstraksi (Value).
Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Use case 2: Structured logs.
Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Skenario 2: Log terstruktur.
Parsing pemisah
Strukturisasi konten log menggunakan pemisah untuk mengurai menjadi beberapa pasangan kunci-nilai. Mendukung pemisah karakter tunggal maupun multi-karakter.
Contoh:
Log mentah tanpa pemrosesan apa pun | Field dipisah oleh karakter yang ditentukan |
| |
Prosedur: Di bagian Processor Configurations pada halaman Logtail Configuration, klik Add Processor dan pilih :
Delimiter: Menentukan karakter yang digunakan untuk memisah konten log.
Contoh: Untuk file CSV, pilih Custom dan masukkan koma (,).
Quote: Jika nilai field berisi pemisah, Anda harus membungkus nilai field tersebut dalam tanda kutip untuk mencegah pemisahan yang salah.
Extracted Field: Tentukan nama field (Key) untuk setiap kolom sesuai urutannya. Aturannya sebagai berikut:
Nama field hanya boleh berisi huruf, angka, dan garis bawah (_).
Harus dimulai dengan huruf atau garis bawah (_).
Panjang maksimum: 128 byte.
Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Use case 2: Structured logs.
Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Skenario 2: Log terstruktur.
Parsing JSON standar
Strukturisasi log JSON bertipe Object dengan mengurai menjadi pasangan kunci-nilai.
Contoh:
Log mentah tanpa pemrosesan apa pun | Ekstraksi otomatis pasangan kunci-nilai JSON standar |
| |
Prosedur: Di bagian Processor Configurations pada halaman Logtail Configuration, klik Add Processor dan pilih :
Original Field: Bidang yang berisi log mentah untuk diurai. Nilai default-nya adalah content.
Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Use case 2: Structured logs.
Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Skenario 2: Log terstruktur.
Parsing JSON bersarang
Uraikan log JSON bersarang menjadi pasangan kunci-nilai dengan menentukan kedalaman ekspansi.
Contoh:
Log mentah tanpa pemrosesan apa pun | Kedalaman ekspansi: 0, menggunakan kedalaman ekspansi sebagai awalan | Kedalaman ekspansi: 1, menggunakan kedalaman ekspansi sebagai awalan |
| | |
Prosedur: Di bagian Processor Configurations pada halaman Logtail Configuration, klik Add Processor dan pilih :
Original Field: Menentukan nama field sumber yang akan diekspansi, seperti
content.JSON Expansion Depth: Kedalaman ekspansi objek JSON, di mana 0 (default) menunjukkan ekspansi penuh, 1 menunjukkan ekspansi tingkat saat ini, dan seterusnya.
Character to Concatenate Expanded Keys: Pemisah untuk nama field saat objek JSON diekspansi. Nilai default adalah garis bawah (_).
Name Prefix of Expanded Keys: Awalan untuk nama field setelah ekspansi JSON.
Expand Array: Mengekspansi array menjadi pasangan kunci-nilai dengan indeks.
Contoh:
{"k":["a","b"]}diekspansi menjadi{"k[0]":"a","k[1]":"b"}.Untuk mengganti nama field yang diekspansi (misalnya dari prefix_s_key_k1 menjadi new_field_name), tambahkan rename fields plugin setelahnya untuk menyelesaikan pemetaan.
Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Use case 2: Structured logs.
Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Skenario 2: Log terstruktur.
Parsing array JSON
Gunakan json_extract fungsi untuk mengekstrak objek JSON dari array JSON.
Contoh:
Log mentah tanpa pemrosesan apa pun | Ekstraksi struktur array JSON |
| |
Prosedur: Di bagian Processor Configurations pada halaman Logtail Configuration, ubah Processing Mode menjadi SPL, konfigurasikan Pernyataan SPL, dan gunakan fungsi json_extract untuk mengekstraksi objek JSON dari array JSON.
Contoh: Ekstrak elemen dari array JSON di field log content dan simpan hasilnya di field baru json1 dan json2.
* | extend json1 = json_extract(content, '$[0]'), json2 = json_extract(content, '$[1]')Parsing log Apache
Strukturisasi konten log menjadi beberapa pasangan kunci-nilai berdasarkan definisi dalam file konfigurasi log Apache.
Contoh:
Log mentah tanpa pemrosesan apa pun | Apache Common Log Format |
| |
Prosedur: Di bagian Processor Configurations pada halaman Logtail Configuration, klik Add Processor dan pilih :
Log Format adalah combined.
APACHE LogFormat Configuration diisi otomatis berdasarkan Log Format.
PentingPastikan untuk memverifikasi isi yang diisi otomatis agar persis sama dengan LogFormat yang didefinisikan dalam file konfigurasi Apache server Anda (biasanya terletak di /etc/apache2/apache2.conf).
Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Use case 2: Structured logs.
Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Skenario 2: Log terstruktur.
Parsing log IIS
Strukturisasi konten log menjadi beberapa pasangan kunci-nilai berdasarkan definisi format log IIS.
Contoh perbandingan:
Log mentah | Adaptasi untuk format khusus server Microsoft IIS |
| |
Prosedur: Di bagian Processor Configurations pada halaman Logtail Configuration, klik Add Processor dan pilih :
Log Format: Pilih format log untuk server IIS Anda.
IIS: Format file log untuk Microsoft Internet Information Services.
NCSA: Common Log Format.
W3C mengacu pada W3C Extended Log File Format.
IIS Configuration Fields: Saat Anda memilih IIS atau NCSA, SLS menggunakan field konfigurasi IIS default. Saat Anda memilih W3C, Anda harus mengatur field ke nilai parameter
logExtFileFlagsdalam file konfigurasi IIS Anda. Contoh:logExtFileFlags="Date, Time, ClientIP, UserName, SiteName, ComputerName, ServerIP, Method, UriStem, UriQuery, HttpStatus, Win32Status, BytesSent, BytesRecv, TimeTaken, ServerPort, UserAgent, Cookie, Referer, ProtocolVersion, Host, HttpSubStatus"Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Use case 2: Structured logs.
Untuk parameter lainnya, lihat deskripsi parameter konfigurasi umum di Skenario 2: Log terstruktur.
Penyembunyian data
Sembunyikan data sensitif dalam log.
Contoh:
Log mentah tanpa pemrosesan apa pun | Hasil masking |
| |
Prosedur: Di bagian Processor Configurations pada halaman Logtail Configuration, klik Add Processor dan pilih :
Original Field: Field yang berisi konten log sebelum parsing.
Data Masking Method:
const: Mengganti konten sensitif dengan string konstan.
md5: Mengganti konten sensitif dengan hash MD5-nya.
Replacement String: Jika Data Masking Method diatur ke const, masukkan string untuk mengganti konten sensitif.
Content Expression that Precedes Replaced Content: Ekspresi yang digunakan untuk mendeteksi konten sensitif, dikonfigurasi menggunakan sintaksis RE2.
Content Expression to Match Replaced Content: Ekspresi reguler yang digunakan untuk mencocokkan konten sensitif. Ekspresi harus ditulis dalam sintaks RE2.
Parsing waktu
Uraikan field waktu dalam log dan tetapkan hasil parsing sebagai field __time__ log tersebut.
Contoh:
Log mentah tanpa pemrosesan apa pun | Parsing waktu |
|
|
Prosedur: Di bagian Processor Configurations pada halaman Logtail Configuration, klik Add Processor dan pilih :
Original Field: Field yang berisi konten log sebelum parsing.
Time Format: Tetapkan format waktu yang sesuai dengan timestamp dalam log.
Time Zone: Pilih zona waktu untuk field waktu log. Secara default, ini adalah zona waktu lingkungan tempat proses LoongCollector (Logtail) berjalan.



