Log aplikasi dan log sistem tersebar di berbagai server, sehingga sulit untuk dicari, dipantau, dan dianalisis. Anda dapat menggunakan kolektor data LoongCollector (Logtail) untuk mengumpulkan log teks dari instance ECS, pusat data yang dikelola sendiri, atau host dari penyedia cloud lainnya, lalu mengirimkannya ke Simple Log Service guna manajemen dan analisis terpusat. Dua mode pengumpulan didukung: pengumpulan berkelanjutan (pengumpulan inkremental real-time, cocok untuk pemantauan berkelanjutan di lingkungan produksi) dan pengumpulan satu kali (impor batch file statis, cocok untuk migrasi data historis).
Pilih mode pengumpulan
Skenario | Mode yang direkomendasikan |
Log aplikasi terus ditulis dan memerlukan pemantauan serta peringatan real-time | Pengumpulan berkelanjutan |
Impor satu kali objek arsip historis | Pengumpulan satu kali |
Migrasi sistem atau data untuk mengisi kembali data historis | Pengumpulan satu kali |
Investigasi sementara log historis untuk periode tertentu | Pengumpulan satu kali |
Secara default, LoongCollector hanya mengumpulkan log baru (inkremental). Untuk mengumpulkan file statis yang sudah ada, Anda harus menggunakan mode pengumpulan satu kali.
Lingkup
Sistem operasi dan arsitektur yang didukung:
LoongCollector saat ini hanya mendukung sistem Linux. Untuk host Windows, gunakan Logtail. Kami merekomendasikan penggunaan LoongCollector untuk skenario ingesti data baru.
LoongCollector adalah agen pengumpulan log generasi baru yang diluncurkan oleh Alibaba Cloud Simple Log Service. Ini merupakan versi peningkatan dari Logtail. Anda hanya perlu menginstal salah satu—LoongCollector atau Logtail—bukan keduanya.
Kebutuhan sumber daya komputasi:
CPU: Minimal 0,4 core.
Memori: Minimal 300 MB.
Penggunaan yang direkomendasikan: Untuk memastikan operasi stabil, kami menyarankan agar penggunaan sumber daya aktual LoongCollector (Logtail) tetap di bawah 80% dari batas. Penggunaan aktual bergantung pada faktor seperti kecepatan pengumpulan, jumlah direktori dan file yang dipantau, serta tingkat kemacetan pengiriman.
Kebutuhan izin:
Jika Anda menggunakan pengguna Resource Access Management (RAM), Anda harus memberikan izin
AliyunLogFullAccessdanAliyunECSFullAccess. Untuk otorisasi detail halus, lihat Apendiks: Kebijakan kustom.
Alur kerja konfigurasi pengumpulan
Persiapan: Buat proyek dan penyimpanan log (Logstore). Proyek adalah unit manajemen sumber daya yang mengisolasi log dari layanan berbeda, sedangkan Logstore adalah wadah tempat log tersebut disimpan.
Konfigurasikan kelompok mesin (Instal LoongCollector): Instal LoongCollector berdasarkan jenis server dan tambahkan ke kelompok mesin. Anda dapat menggunakan kelompok mesin untuk mengelola node pengumpulan secara terpusat, mendistribusikan konfigurasi, dan mengelola status server.
Buat dan konfigurasikan aturan pengumpulan log:
Konfigurasi global dan input: Tentukan nama konfigurasi pengumpulan serta sumber dan cakupan pengumpulan log.
Pemrosesan dan strukturisasi log: Konfigurasikan aturan pemrosesan berdasarkan format log.
Log multi-baris: Mode ini untuk entri log yang mencakup beberapa baris, seperti stack exception Java atau traceback Python. Anda dapat mengidentifikasi setiap entri log menggunakan ekspresi reguler awal baris dan menggabungkan baris-baris berurutan dari log yang sama menjadi satu entri lengkap.
Penguraian terstruktur: Gunakan plugin penguraian, seperti ekspresi reguler, pemisah, atau mode NGINX, untuk mengekstraksi string mentah menjadi pasangan kunci-nilai terstruktur. Setiap field dapat dikueri dan dianalisis secara independen.
Data Filtering: Konfigurasikan daftar hitam pengumpulan dan aturan filter konten untuk menyaring konten log, sehingga mengurangi transmisi dan penyimpanan data berlebih.
Kategorisasi log: Gunakan topik untuk membedakan secara fleksibel log dari layanan, server, atau sumber path berbeda.
Query and Analysis Configurations: Sistem secara default mengaktifkan indeks teks penuh, yang mendukung pencarian kata kunci. Kami merekomendasikan mengaktifkan indeks bidang untuk melakukan kueri dan analisis tepat pada field terstruktur, sehingga meningkatkan efisiensi pencarian.
Verifikasi dan troubleshooting: Setelah konfigurasi selesai, verifikasi apakah log berhasil dikumpulkan. Jika mengalami masalah seperti tidak ada pengumpulan data, kegagalan heartbeat, atau error penguraian, lihat FAQ.
Persiapan
Sebelum mengumpulkan log, Anda harus merencanakan dan membuat proyek serta Logstore untuk mengelola dan menyimpan log. Jika Anda memiliki sumber daya yang tersedia, Anda dapat melewati langkah ini dan melanjutkan ke Konfigurasikan kelompok mesin (Instal LoongCollector).
Buat proyek
Buat Logstore
Langkah 1: Konfigurasikan kelompok mesin (Instal LoongCollector)
Setelah menyelesaikan Persiapan, instal LoongCollector pada berbagai jenis server dan tambahkan ke kelompok mesin.
Langkah instalasi berikut hanya berlaku jika sumber log adalah instance ECS Alibaba Cloud, dan instance tersebut serta proyek Simple Log Service berada dalam akun Alibaba Cloud yang sama dan wilayah yang sama.
Jika instance ECS dan proyek Anda tidak berada dalam akun atau wilayah yang sama, atau jika sumber log adalah server yang dikelola sendiri, lihat Instal dan konfigurasikan LoongCollector.
Prosedur:
Di halaman
Logstores, klik
di sebelah kiri nama Logstore tujuan untuk memperluasnya.Di sebelah Import Data, klik ikon
. Di dialog Quick Data Import, pilih templat ingesti log teks (misalnya Single-line Text Log) dan klik Integrate Now.Semua templat ingesti log teks hanya berbeda pada plugin penguraiannya. Sisa proses konfigurasi sama dan dapat dimodifikasi nanti.
Di halaman Machine Group Configurations, konfigurasikan parameter berikut:
Scenario: Servers
Installation Environment: ECS
Konfigurasi Kelompok Mesin: Berdasarkan status instalasi LoongCollector dan konfigurasi kelompok mesin server tujuan, pilih opsi yang sesuai:
Jika LoongCollector sudah diinstal dan telah ditambahkan ke kelompok mesin, pilih dari daftar Source Machine Group dan tambahkan ke daftar Applied Machine Group. Anda tidak perlu membuatnya lagi.
Jika LoongCollector belum diinstal, klik Create Machine Group:
Langkah-langkah berikut akan memandu Anda melalui instalasi otomatis LoongCollector dan pembuatan kelompok mesin.
Sistem secara otomatis mencantumkan instance ECS di wilayah yang sama dengan proyek. Pilih satu atau beberapa instance dari mana log akan dikumpulkan.
Klik Install and Create as Machine Group. Sistem secara otomatis menginstal LoongCollector pada instance ECS yang dipilih.
Konfigurasikan Name kelompok mesin dan klik OK.
CatatanJika instalasi gagal atau tetap dalam status menunggu, periksa apakah wilayah ECS sama dengan wilayah proyek.
Untuk menambahkan server yang sudah memiliki LoongCollector ke kelompok mesin yang sudah ada, lihat Bagaimana cara menambahkan server ke kelompok mesin yang sudah ada?
Periksa status heartbeat: 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 untuk membangun heartbeat awal. Tunggu sekitar dua menit, lalu refresh status heartbeat. Jika masih FAIL setelah direfresh, lihat Heartbeat kelompok mesin adalah FAIL untuk troubleshooting.
Langkah 2: Buat dan konfigurasikan aturan pengumpulan log
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 proyeknya. Nama tidak dapat diubah setelah dibuat. Konvensi penamaan:
Hanya boleh berisi huruf kecil, angka, tanda hubung (-), dan garis bawah (_).
Harus dimulai dan diakhiri dengan huruf kecil atau angka.
Input Configurations:
Type: Text Log Collection.
File Path: Jalur file log yang akan dikumpulkan.
Linux: Harus dimulai dengan garis miring (/). Misalnya,
/data/mylogs/**/*.logmenunjukkan semua file dengan ekstensi .log di direktori/data/mylogs. Untuk aplikasi Node.js, jalur log umumnya adalah/var/log/nodejs/*.log, yang mengumpulkan setiap file.logdi bawah/var/log/nodejs.Windows: Harus dimulai dengan huruf drive. Misalnya,
C:\Program Files\Intel\**\*.Log.
Maximum Directory Monitoring Depth: Kedalaman direktori maksimum yang dapat dicocokkan oleh karakter wildcard
**di File Path. Default-nya adalah 0, yang berarti hanya direktori saat ini yang dipantau.
2. Pemrosesan dan strukturisasi log
Konfigurasikan aturan pemrosesan log untuk mengubah log mentah yang tidak terstruktur menjadi data terstruktur yang dapat dicari. Hal ini meningkatkan efisiensi kueri dan analisis log. Kami merekomendasikan agar Anda menambahkan contoh log sebelum mengonfigurasi aturan:
Di halaman Logtail Configuration, di area Processor Configurations, klik Add Sample Log dan masukkan konten log yang akan dikumpulkan. Sistem mengidentifikasi format log berdasarkan contoh tersebut dan membantu menghasilkan ekspresi reguler serta aturan penguraian, sehingga menyederhanakan konfigurasi.
Skenario 1: Tangani log multi-baris (seperti stack trace Java)
Log seperti stack exception Java dan objek JSON sering kali mencakup beberapa baris. Dalam mode pengumpulan default, log tersebut dipisah menjadi beberapa catatan tidak lengkap, sehingga menyebabkan hilangnya konteks. Untuk mencegah hal ini, Anda dapat mengaktifkan mode multi-baris dan mengonfigurasi ekspresi reguler awal baris untuk menggabungkan baris-baris berurutan dari log yang sama menjadi satu entri lengkap.
Contoh:
Log mentah tanpa pemrosesan apa pun | Dalam mode pengumpulan default, setiap baris dianggap sebagai log independen. Stack trace terpecah, dan konteks hilang. | Dengan mode multi-baris diaktifkan, ekspresi reguler awal baris mengidentifikasi log lengkap, sehingga mempertahankan struktur semantik penuh. |
| Dalam mode default, log ini dipisah menjadi 6 catatan independen: yang pertama hanya berisi pesan error | Setelah mode multi-baris diaktifkan, log error |
Prosedur: Di halaman Logtail Configuration, di area Processor Configurations, aktifkan Multi-line Mode:
Type: Pilih Custom atau Multi-line JSON.
Custom: Format log mentah tidak tetap. Anda harus mengonfigurasi Regex to Match First Line untuk mengidentifikasi baris awal setiap entri log.
Regex to Match First Line: Anda dapat menghasilkannya secara otomatis atau memasukkannya 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.*.Generasi otomatis: Klik Generate Regex Automatically. Lalu, di kotak teks Log Sample, pilih konten log yang akan diekstraksi dan klik Generate Regex.
Mode pengumpulan output standar Kubernetes lama tidak mendukung fitur Add Log Sample dan generasi ekspresi reguler otomatis. Untuk menguji ekspresi reguler, buat LogStore dengan tipe log teks, uji ekspresi reguler di LogStore tersebut, lalu tempel ekspresi reguler ke konfigurasi Logtail LogStore target.
Input manual: Klik Enter Regex Manually. Setelah memasukkan ekspresi, klik Validate.
Multi-line JSON: Ketika semua log mentah dalam format JSON standar, Simple Log Service secara otomatis menangani jeda baris dalam satu log JSON.
Processing Method If Splitting Fails:
Discard: Jika segmen teks tidak cocok dengan aturan awal baris, segmen tersebut dibuang.
Retain Single Line: Teks yang tidak cocok dipisah dan dipertahankan dalam mode baris tunggal aslinya.
Skenario 2: Logging terstruktur
Ketika 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 penguraian data yang secara otomatis mengonversi log mentah dengan format berbeda menjadi data terstruktur. Hal ini memberikan fondasi yang kuat untuk analisis, pemantauan, dan peringatan selanjutnya.
Contoh:
Log mentah tanpa pemrosesan apa pun | Log setelah penguraian terstruktur |
| |
Prosedur: Di area Processor Configurations halaman Logtail Configuration
Tambahkan plugin penguraian: Klik Add Processor dan konfigurasikan plugin, seperti Penguraian Ekspresi Reguler, Penguraian Pemisah, atau Penguraian JSON, berdasarkan format aktual. Contoh ini menggunakan pengumpulan log NGINX. Pilih .
NGINX Log Configuration: Salin definisi lengkap
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, penguraian log akan gagal.
Contoh: kumpulkan log berformat JSON yang dihasilkan oleh winston
winston secara default menghasilkan log berformat JSON. Karena ini adalah log JSON standar, Anda dapat langsung menggunakan penguraian JSON tanpa menulis ekspresi reguler.
Contoh log:
{"level":"info","message":"User logged in","timestamp":"2026-01-01T00:00:00.000Z"}Prosedur: Di halaman Logtail Configuration, di area Input Configurations, atur File Path ke
/var/log/nodejsdan pola nama file keapp.log. Lalu, di area Processor Configurations, klik Add Processor dan pilih Native Processor > Data Parsing (JSON Mode).Matikan Use System Time, atur Time Key ke
timestamp, dan atur Time Conversion Format ke%Y-%m-%dT%H:%M:%S.%fZ.Plugin penguraian JSON secara otomatis mengekstraksi
timestamp,level, danmessagesebagai field terpisah. Field kustom, sepertiuserId, juga diuraikan tanpa konfigurasi tambahan. Untuk detail parameter lengkap, lihat Standard JSON parsing dan Time parsing di Apendiks: Penjelasan plugin penguraian native.
Contoh: kumpulkan log berformat kustom yang dihasilkan oleh pino
Ketika pino atau library serupa dikonfigurasi untuk menghasilkan output teks biasa kustom, log tersebut bukan JSON standar, sehingga gunakan penguraian ekspresi reguler dan ekstrak field dengan grup tangkapan.
Contoh log:
2026-01-01T00:00:00.000Z [INFO] User logged inProsedur: Di halaman Logtail Configuration, di area Input Configurations, atur File Path ke
/var/log/nodejsdan pola nama file kepino.log. Lalu, di area Processor Configurations, klik Add Processor dan pilih Native Processor > Data Parsing (Regex Mode).Ekspresi reguler:
^(\S+) \[(\w+)\] (.*)$Nama field, sesuai urutan grup tangkapan:
time,level, danmessage. Atur Time Key ketime. Untuk detail parameter lengkap, lihat Regular expression parsing di Apendiks: Penjelasan plugin penguraian native.
Parameter konfigurasi umum: Parameter berikut muncul di beberapa plugin penguraian data, dan fungsinya konsisten.
Source Field: Menentukan nama field sumber yang akan diuraikan. Default-nya adalah
content, yaitu seluruh entri log yang dikumpulkan.Keep Source Field on Parse Failure: Kami merekomendasikan mengaktifkan opsi ini. Jika log tidak dapat diuraikan dengan sukses oleh plugin, misalnya karena ketidakcocokan format, opsi ini memastikan konten log asli tidak hilang tetapi tetap dipertahankan sepenuhnya di field sumber yang ditentukan.
Keep Source Field on Parse Success: Jika Anda memilih opsi ini, konten log asli tetap dipertahankan meskipun log berhasil diuraikan.
3. Filter log
Saat pengumpulan log, pengumpulan besar-besaran log bernilai rendah atau tidak relevan, seperti log level DEBUG/INFO, tidak hanya membuang sumber daya penyimpanan dan meningkatkan biaya, tetapi juga memengaruhi efisiensi kueri dan menimbulkan risiko kebocoran data. Untuk mengatasi hal ini, Anda dapat menerapkan strategi filter detail halus untuk pengumpulan log yang efisien dan aman.
Kurangi biaya dengan filter konten
Anda dapat memfilter berdasarkan field konten log, seperti hanya mengumpulkan log dengan level WARNING atau ERROR.
Contoh:
Log mentah tanpa pemrosesan apa pun | Kumpulkan hanya log |
| |
Prosedur: Di area Processor Configurations halaman Logtail Configuration
Klik Add Processor dan pilih :
Field Name: Field log yang akan difilter.
Field Value: Ekspresi reguler yang digunakan untuk filter. Hanya pencocokan teks penuh yang didukung. Pencocokan kata kunci parsial tidak didukung.
Kontrol cakupan pengumpulan dengan daftar hitam
Anda dapat menggunakan daftar hitam untuk mengecualikan direktori atau file tertentu, sehingga mencegah log yang tidak relevan atau sensitif diunggah.
Prosedur: Di halaman Logtail Configuration, di area , aktifkan Collection Blacklist dan klik Add.
Mendukung pencocokan penuh dan pencocokan wildcard untuk direktori dan nama file. Hanya karakter wildcard asterisk (*) dan tanda tanya (?) yang didukung.
File Path Blacklist: Jalur file yang akan diabaikan. Contoh:
/home/admin/private*.log: Mengabaikan semua file di direktori/home/admin/yang dimulai dengan "private" dan diakhiri dengan ".log"./home/admin/private*/*_inner.log: Mengabaikan file yang diakhiri dengan "_inner.log" di direktori yang dimulai dengan "private" di bawah direktori/home/admin/.
File Blacklist: Nama file yang akan diabaikan selama pengumpulan. Contoh:
app_inner.log: Mengabaikan semua file bernamaapp_inner.log.
Directory Blacklist: Jalur direktori tidak boleh diakhiri dengan garis miring (/). Contoh:
/home/admin/dir1/: Daftar hitam direktori tidak akan berlaku./home/admin/dir*: Mengabaikan file di semua subdirektori di bawah/home/admin/yang dimulai dengan "dir"./home/admin/*/dir: Mengabaikan semua file di subdirektori bernama "dir" di 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
Ketika beberapa aplikasi atau instans memiliki log dengan format yang sama tetapi jalur berbeda, seperti /apps/app-A/run.log dan /apps/app-B/run.log, sulit membedakan sumber log yang dikumpulkan. Dengan mengonfigurasi topik, Anda dapat membedakan secara logis log dari aplikasi, layanan, atau jalur berbeda. Hal ini memungkinkan kategorisasi efisien dan kueri tepat dalam penyimpanan terpadu.
Prosedur: Di , pilih metode untuk menghasilkan topik. Tiga jenis berikut didukung:
Topik kelompok mesin: Ketika konfigurasi pengumpulan diterapkan ke beberapa kelompok mesin, LoongCollector secara otomatis menggunakan nama kelompok mesin server sebagai field
__topic__untuk diunggah. Ini cocok untuk skenario di mana log dikategorikan berdasarkan host.Custom: Formatnya adalah
customized://<custom_topic_name>, misalnya,customized://app-login. Ini cocok untuk skenario topik statis dengan pengenal layanan tetap.Ekstraksi jalur file: Ekstrak informasi kunci dari jalur lengkap file log untuk menandai sumber log secara dinamis. Ini cocok untuk situasi di mana beberapa pengguna atau aplikasi berbagi nama file log yang sama tetapi memiliki jalur berbeda. Ketika beberapa pengguna atau layanan menulis log ke direktori tingkat atas berbeda tetapi sub-jalur dan nama file-nya 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 Ekstraksi jalur file dan menggunakan ekspresi reguler untuk mengekstrak informasi kunci dari jalur lengkap. Hasil yang cocok kemudian diunggah ke Logstore sebagai topik.
Aturan ekstraksi jalur file: Berdasarkan grup tangkapan ekspresi reguler
Ketika Anda mengonfigurasi ekspresi reguler, sistem secara otomatis menentukan format field output berdasarkan jumlah dan penamaan grup tangkapan. Aturannya sebagai berikut:
Dalam ekspresi reguler untuk jalur file, Anda perlu meng-escape garis miring (/).
Jenis grup tangkapan
Skenario
Field yang dihasilkan
Contoh regex
Contoh jalur yang cocok
Contoh field yang dihasilkan
Grup tangkapan tunggal (hanya satu
(.*?))Hanya satu dimensi yang diperlukan untuk membedakan sumber (seperti username, lingkungan)
Menghasilkan field
__topic__\/logs\/(.*?)\/app\.log/logs/userA/app.log__topic__: userABeberapa grup tangkapan tanpa nama (beberapa
(.*?))Beberapa dimensi diperlukan untuk membedakan sumber, tetapi tag semantik tidak diperlukan
Menghasilkan field tag
__tag__:__topic_{i}__, di mana{i}adalah nomor urut grup tangkapan\/logs\/(.*?)\/(.*?)\/app\.log/logs/userA/svcA/app.log__tag__:__topic_1__userA__tag__:__topic_2__svcABeberapa grup tangkapan 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
5. Konfigurasi output
Secara default, semua log dikirim ke Logstore saat ini, dan metode kompresinya adalah lz4. Untuk mendistribusikan log dari sumber yang sama ke Logstore berbeda, Anda dapat mengonfigurasi pengaturan berikut:
Distribusi dinamis multi-target
Pengiriman multi-tujuan hanya tersedia untuk LoongCollector 3.0.0 ke atas. Logtail tidak mendukung fitur ini.
Anda dapat mengonfigurasi hingga lima tujuan output.
Setelah mengonfigurasi beberapa tujuan output, konfigurasi pengumpulan ini tidak lagi ditampilkan di daftar konfigurasi pengumpulan Logstore saat ini. Untuk melihat, memodifikasi, atau menghapus konfigurasi pengiriman multi-tujuan, lihat Bagaimana cara mengelola konfigurasi pengiriman multi-tujuan?.
Prosedur: Di area Output Configurations halaman Logtail Configuration.
Klik
untuk memperluas konfigurasi output.Klik Add Output Targets dan lengkapi konfigurasi berikut:
Logstores: Pilih Logstore tujuan.
Compression Method: Mendukung lz4 dan zstd.
Route Settings: Rute dan distribusikan log berdasarkan field tag-nya. Log yang cocok dengan konfigurasi routing diunggah ke Logstore tujuan. Jika konfigurasi routing kosong, semua log yang dikumpulkan diunggah ke Logstore tujuan.
Tag Name: Nama field tag yang digunakan untuk routing. Masukkan nama field secara langsung, seperti
__path__, tanpa awalan__tag__:. Field tag dibagi menjadi dua kategori berikut:Untuk informasi lebih lanjut tentang tag, lihat Kelola tag pengumpulan LoongCollector.
Terkait agen: Tag ini terkait dengan agen pengumpulan itu sendiri dan tidak bergantung pada plugin. Contohnya termasuk
__hostname__dan__user_defined_id__.Terkait plugin input: Tag ini bergantung pada plugin input, yang menyediakan dan memperkaya log dengan informasi relevan. Contohnya termasuk
__path__untuk pengumpulan file, dan_pod_name_serta_container_name_untuk pengumpulan Kubernetes.
Tag Value: Ketika nilai field tag log cocok dengan nilai ini, log dikirim ke Logstore tujuan ini.
Discard this tag?: Jika Anda mengaktifkan opsi ini, log yang diunggah tidak berisi field tag ini.
Langkah 3: Konfigurasikan kueri dan analisis
Setelah mengonfigurasi pemrosesan log dan plugin, klik Next untuk menuju halaman Query and Analysis Configurations:
Sistem secara default mengaktifkan indeks teks penuh, yang memungkinkan Anda melakukan pencarian kata kunci pada konten log asli.
Untuk melakukan kueri tepat berdasarkan field, tunggu hingga Preview Data dimuat di halaman, lalu klik Automatic Index Generation. Simple Log Service menghasilkan indeks bidang berdasarkan entri pertama dalam data pratinjau.
Setelah konfigurasi selesai, klik Next untuk menyelesaikan konfigurasi pengumpulan.
Langkah 4: Verifikasi dan troubleshooting
Setelah konfigurasi selesai, terapkan ke kelompok mesin dan simpan. Tunggu sebentar, lalu verifikasi konfigurasi menggunakan daftar periksa berikut.
Daftar periksa verifikasi
Konfirmasi bahwa konten baru telah ditambahkan ke file log: LoongCollector hanya mengumpulkan log inkremental. Jalankan
tail -f /path/to/your/log/filedan picu operasi bisnis untuk memastikan log baru sedang ditulis.Periksa status LoongCollector:
sudo /etc/init.d/loongcollectord status.Periksa heartbeat kelompok mesin: Buka halaman , klik nama kelompok mesin tujuan, dan di area , periksa status Heartbeat.
Jika heartbeat-nya OK, kelompok mesin terhubung ke proyek Simple Log Service.
Jika heartbeat-nya FAIL, lihat Heartbeat kelompok mesin adalah FAIL untuk troubleshooting.
Kueri log: Buka halaman kueri dan analisis Logstore tujuan, klik Search & Analyze (rentang waktu default adalah 15 menit terakhir), dan periksa apakah log baru sedang diingesti.
Penyelesaian masalah umum
Heartbeat kelompok mesin GAGAL
Periksa ID pengguna: Jika jenis server Anda bukan ECS, atau jika instance ECS dan proyek berada dalam akun Alibaba Cloud 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 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 tulis 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 troubleshooting lebih lanjut.
Tidak ada data yang dikumpulkan
Periksa log inkremental: Setelah mengonfigurasi LoongCollector (Logtail) untuk pengumpulan, jika tidak ada log baru yang ditambahkan ke file log yang akan dikumpulkan, LoongCollector (Logtail) tidak mengumpulkan file tersebut.
Periksa status heartbeat kelompok mesin: Buka halaman , klik nama kelompok mesin tujuan, dan di area , periksa status Heartbeat.
Jika heartbeat-nya OK, kelompok mesin terhubung ke proyek Simple Log Service.
Jika heartbeat-nya FAIL, lihat Heartbeat kelompok mesin adalah FAIL untuk troubleshooting.
Konfirmasi bahwa konfigurasi pengumpulan LoongCollector (Logtail) telah diterapkan ke kelompok mesin: Meskipun konfigurasi pengumpulan LoongCollector (Logtail) telah dibuat, log tidak dapat dikumpulkan jika belum diterapkan ke kelompok mesin.
Buka halaman , klik nama kelompok mesin tujuan untuk membuka halaman Machine Group Configurations.
Di halaman tersebut, lihat Manage Configuration. Sisi kiri menampilkan All Logtail Configurations, dan sisi kanan menampilkan Applied Logtail Configs. Jika konfigurasi pengumpulan LoongCollector (Logtail) tujuan telah dipindahkan ke area terapan di sisi kanan, berarti konfigurasi tersebut telah berhasil diterapkan ke kelompok mesin tujuan.
Jika konfigurasi pengumpulan LoongCollector (Logtail) tujuan belum dipindahkan ke area terapan di sisi kanan, klik Modify. Di daftar All Logtail Configurations di sisi kiri, pilih nama konfigurasi LoongCollector (Logtail) tujuan, klik
untuk memindahkannya ke area terapan di sisi kanan, lalu klik OK.
Error pengumpulan log atau error format
Pendekatan troubleshooting: Situasi ini menunjukkan bahwa konektivitas jaringan dan konfigurasi dasar normal. Masalah utamanya adalah ketidakcocokan antara konten log dan aturan penguraian. Anda perlu melihat pesan error spesifik untuk menemukan masalah:
Di halaman Logtail Configuration, klik nama konfigurasi LoongCollector (Logtail) yang mengalami error pengumpulan. Di tab Log Collection Error, klik Select Time Range untuk mengatur rentang kueri.
Di area , lihat metrik alarm log error dan temukan solusi yang sesuai berdasarkan Jenis error umum untuk pengumpulan data.
Kuota dan batasan
Batasan | Batasan |
Ukuran entri log | Batas default adalah 512 KB. Anda dapat menyesuaikannya menggunakan parameter startup max_read_buffer_size, tetapi tidak boleh melebihi 8 MB. Untuk informasi lebih lanjut, lihat Jenis jaringan Logtail, parameter startup, dan file konfigurasi. Setelah log multi-baris dipisah oleh ekspresi reguler awal baris, batas ukuran untuk setiap entri log tetap 512 KB. Jika log melebihi 512 KB, log tersebut dipaksa dipisah menjadi beberapa entri untuk pengumpulan. Misalnya, jika satu entri log berukuran 1025 KB, 512 KB pertama diproses, lalu 512 KB berikutnya, dan akhirnya 1 KB. Hasil pengumpulan akhir adalah beberapa log tidak lengkap. |
Encoding file | Mendukung file log ber-encoding UTF-8 atau GBK. Kami merekomendasikan menggunakan encoding UTF-8 untuk kinerja pemrosesan yang lebih baik. Peringatan Jika file log dalam format encoding lain, masalah seperti teks acak dan kehilangan data dapat terjadi. |
Rotasi file log | Ukuran antrian rotasi log default-nya adalah 20. Anda dapat menyesuaikannya menggunakan parameter startup logreader_max_rotate_queue_size. Untuk informasi lebih lanjut, lihat Jenis jaringan Logtail, parameter startup, dan file konfigurasi. Anda dapat mengatur jalur pengumpulan ke format Penting Jangan mencampur kedua format dalam instance Logtail yang sama. Jika tidak, file yang sama mungkin cocok dengan beberapa konfigurasi pengumpulan Logtail, yang menyebabkan pengumpulan duplikat. Jika ada lebih dari 20 file yang belum diproses, log yang baru dihasilkan akan hilang. Dalam kasus seperti ini, pertama-tama periksa apakah kuota shard write Logstore telah terlampaui dan sesuaikan tingkat konkurensi Logtail. Untuk informasi lebih lanjut, lihat Jenis jaringan Logtail, parameter startup, dan file konfigurasi. |
Perilaku pengumpulan saat penguraian log diblokir | Ketika penguraian log diblokir, Logtail tetap membuka deskriptor file untuk file log tersebut untuk mencegah file dihapus selama blokir, yang dapat menyebabkan kehilangan data. Jika terjadi beberapa rotasi file log selama blokir penguraian, Logtail menempatkan file-file tersebut di antrian rotasi. |
Ekspresi reguler | Mendukung Perl Compatible Regular Expressions. |
JSON | Mendukung penuh JSON standar (RFC7159, ECMA-404). JSON non-standar, seperti |
Perilaku pembukaan file | Logtail tetap membuka file yang dikumpulkan dan file di antrian rotasi untuk memastikan integritas data. File ditutup dalam situasi berikut:
Jika Anda ingin handle file dilepas dalam waktu yang dapat dikontrol setelah file dihapus, terlepas dari apakah file telah sepenuhnya dikumpulkan atau log masih ditulis ke dalamnya, Anda dapat mengatur timeout menggunakan parameter startup force_release_deleted_file_fd_timeout. Untuk informasi lebih lanjut, lihat Jenis jaringan Logtail, parameter startup, dan file konfigurasi. |
Perilaku pengumpulan log awal | Logtail hanya mengumpulkan file log inkremental. Ketika file pertama kali ditemukan dimodifikasi, jika ukuran file melebihi 1 MB (512 KB untuk output standar kontainer), pengumpulan dimulai dari 1 MB terakhir. Jika tidak, pengumpulan dimulai dari awal file. Anda dapat menyesuaikan ukuran pengumpulan awal untuk file baru menggunakan parameter tail_size_kb dalam konfigurasi pengumpulan Logtail. Untuk informasi lebih lanjut, lihat Konfigurasi Logtail (lama). Jika file log tidak dimodifikasi setelah konfigurasi pengumpulan Logtail diterapkan, Logtail tidak mengumpulkan file tersebut. Untuk mengumpulkan file historis, lihat Impor file log historis. |
Perilaku saat file ditimpa | Logtail mengidentifikasi file menggunakan inode ditambah hash 1.024 byte pertama file. Jika file ditimpa dan inode atau hash 1.024 byte pertama berubah, file dianggap sebagai file baru dan dikumpulkan dari awal. Jika tidak, file tidak dikumpulkan. |
Perilaku saat file dipindahkan | Jika file dipindahkan dan cocok dengan konfigurasi pengumpulan Logtail yang sebelumnya belum pernah cocok dengan file ini, file yang dipindahkan dianggap sebagai file baru dan dikumpulkan dari awal. Jika tidak, file tidak dikumpulkan. |
Riwayat pengumpulan file | Logtail menyimpan riwayat kemajuan pengumpulan file di memori untuk memastikan hanya bagian inkremental yang dikumpulkan setelah file berubah. Jika terjadi penulisan ke log di luar rentang penyimpanan, pengumpulan duplikat mungkin terjadi.
|
Log teks non-standar | Untuk baris dalam log yang berisi |
Penagihan
Menginstal LoongCollector atau Logtail gratis.
Biaya dikenakan untuk penulisan log, penyimpanan, pengindeksan, kueri, transformasi, dan pengiriman berdasarkan metode penagihan Logstore.
Jika Anda menggunakan fitur Global Accelerator selama instalasi atau konfigurasi, biaya trafik tambahan dikenakan untuk data yang ditransmisikan melalui jaringan akselerasi.
FAQ
Bagaimana cara mengelola konfigurasi pengiriman multi-tujuan?
Karena konfigurasi pengiriman multi-tujuan terkait dengan beberapa Logstore, konfigurasi ini perlu dipelihara melalui halaman manajemen tingkat proyek:
Masuk ke Konsol Simple Log Service dan klik nama proyek tujuan.
Di panel navigasi kiri, klik
.CatatanHalaman ini mengelola secara terpusat semua konfigurasi pengumpulan di bawah proyek, termasuk yang tersisa setelah Logstore dihapus secara tidak sengaja.
Bagaimana cara mengirim log dari server ECS ke proyek di akun Alibaba Cloud lain?
Jika Anda belum menginstal LoongCollector, lihat Instal kolektor data dan pilih skenario cross-account yang sesuai untuk instalasi.
Jika Anda sudah menginstal LoongCollector, konfigurasikan ID pengguna sebagai berikut. ID ini digunakan untuk menunjukkan bahwa server ini memiliki izin untuk diakses dan log-nya dikumpulkan oleh akun yang memiliki proyek Simple Log Service.
Anda hanya perlu mengonfigurasi ID pengguna ketika mengumpulkan log dari instance ECS non-akun, pusat data yang dikelola sendiri, atau server dari penyedia cloud lain.
Salin ID akun Alibaba Cloud yang memiliki Simple Log Service: Arahkan kursor ke gambar profil di pojok kanan atas, lalu lihat dan salin ID akun dari tab pop-up.
Masuk ke server dari mana Anda ingin mengumpulkan log dan buat file ID akun Alibaba Cloud untuk mengonfigurasi ID pengguna:
touch /etc/ilogtail/users/{Alibaba Cloud account ID} # Jika direktori /etc/ilogtail/users tidak ada, buat secara manual. File konfigurasi ID pengguna hanya memerlukan nama file, tanpa ekstensi.
Bagaimana cara mengirim log dari server ECS ke proyek di wilayah berbeda dalam akun yang sama?
Jika Anda belum menginstal LoongCollector, lihat Instal kolektor data dan pilih skenario cross-region yang sesuai untuk instalasi.
Jika Anda sudah menginstal LoongCollector, Anda perlu memodifikasi konfigurasi LoongCollector.
Jalankan perintah
sudo /etc/init.d/ilogtaild stopuntuk menghentikan LoongCollector.Modifikasi file konfigurasi startup LoongCollector
ilogtail_config.json. Pilih salah satu dari dua metode berikut untuk memodifikasinya berdasarkan kebutuhan jaringan Anda:Jalur file konfigurasi:
/usr/local/ilogtail/ilogtail_config.jsonMetode 1: Gunakan transmisi jaringan publik
Lihat RegionID dan ganti wilayah dalam file konfigurasi dengan wilayah tempat Simple Log Service berada. Field yang perlu dimodifikasi meliputi:
primary_regionBagian wilayah di
config_serversregiondan bagian wilayah diendpoint_listdalamdata_servers
Metode 2: Gunakan akselerasi transfer
Ganti baris endpoint di parameter data_server_list dengan
log-global.aliyuncs.com. Untuk jalur file, lihat Jenis jaringan Logtail, parameter startup, dan file konfigurasi.
Jalankan perintah
sudo /etc/init.d/ilogtaild startuntuk memulai LoongCollector.
Bagaimana cara menambahkan server ke kelompok mesin yang sudah ada?
Ketika Anda memiliki kelompok mesin yang sudah dikonfigurasi dan ingin menambahkan server baru, seperti instance ECS yang baru dideploy atau server yang dikelola sendiri, untuk mewarisi konfigurasi pengumpulannya, Anda dapat menambahkannya dengan mengikuti langkah-langkah berikut.
Prasyarat:
Kelompok mesin yang sudah dikonfigurasi sudah ada.
Server baru telah menginstal LoongCollector.
Prosedur:
Lihat ID kelompok mesin tujuan:
Di halaman proyek tujuan, di panel navigasi kiri, klik
.Di halaman kelompok mesin, klik nama kelompok mesin tujuan.
Di halaman konfigurasi kelompok mesin, lihat ID kelompok mesin.
Lakukan operasi yang sesuai berdasarkan jenis ID:
CatatanSatu kelompok mesin tidak boleh berisi server Linux dan Windows sekaligus. Jangan mengonfigurasi ID kustom yang sama pada server Linux dan Windows. 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 tujuan, klik Modify dan masukkan alamat IP server. Pisahkan beberapa alamat IP dengan line feed.
Setelah konfigurasi selesai, klik OK dan konfirmasi status heartbeat. Setelah heartbeat-nya OK, server secara otomatis menerapkan konfigurasi pengumpulan kelompok mesin.
Jika status heartbeat-nya FAIL, lihat Heartbeat kelompok mesin adalah FAIL untuk troubleshooting lebih lanjut.
Jenis 2: ID kelompok mesin adalah ID kustom
Bergantung pada sistem operasi, tulis string ID kustom yang konsisten dengan kelompok mesin tujuan 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.
Bagaimana cara mengimpor konfigurasi pengumpulan dari proyek lain?
Setelah menyelesaikan Persiapan dan Konfigurasi Kelompok Mesin, Anda dapat dengan cepat mengimpor konfigurasi pengumpulan dari proyek yang ada ke Logstore saat ini untuk menghindari konfigurasi berulang dan meningkatkan efisiensi.
Prosedur:
Setelah mengonfigurasi kelompok mesin, klik Next untuk menuju halaman Logtail Configuration.
Di pojok kanan atas halaman, klik Import Other Configuration.
Pilih proyek untuk diimpor dan konfigurasi pengumpulan di bawah proyek tersebut.
Klik OK. Sistem secara otomatis memuat konfigurasi yang dipilih.
Setelah memeriksa bahwa informasi konfigurasi yang diimpor benar, Anda dapat mengklik Next untuk menuju halaman Konfigurasi Kueri dan Analisis untuk menyelesaikan konfigurasi selanjutnya.
Bagaimana cara mendapatkan alamat IP server untuk digunakan sebagai ID kelompok mesin?
Di server tempat LoongCollector (Logtail) diinstal, buka file /usr/local/ilogtail/app_info.json dan lihat nilai ip.
Alamat IP server yang secara otomatis diperoleh oleh Logtail dicatat di field ip file app_info.json. Berikut adalah contohnya:
# cat /usr/local/ilogtail/app_info.json
{
"UUID" : "xxx",
"compiler" : "GCC 9.3.1",
"hostname" : "iZ2zexxx",
"instance_id" : "xxx_172.26.128.15_1730267282",
"ip" : "172.26.128.15",
"logtail_version" : "1.8.7",
"os" : "Linux; 5.10.134-17.2.al8.x86_64; #1 SMP Fri Aug 9 15:49:42 CST 2024; x86_64",
"update_time" : "2024-10-30 13:48:02"
}Jika ada beberapa server, masukkan alamat IP yang sesuai secara manual. Alamat IP harus dipisahkan dengan line feed.
Satu kelompok mesin tidak boleh berisi server Linux dan Windows sekaligus. Jangan menambahkan alamat IP server Windows dan Linux ke Machine Groups yang sama.
Bagaimana agar file log yang sama dikumpulkan oleh beberapa konfigurasi secara bersamaan?
Secara default, untuk menghindari duplikasi data, Simple Log Service membatasi file log teks hanya dikumpulkan oleh satu konfigurasi Logtail. Untuk mengaktifkan file log yang sama dikumpulkan oleh beberapa konfigurasi secara bersamaan, Anda perlu mengaktifkan fitur yang memungkinkan file dikumpulkan beberapa kali.
Prosedur:
Ketika Anda mengumpulkan beberapa salinan, IO file read, sumber daya komputasi, dan IO jaringan meningkat secara linear.
Masuk ke Konsol Simple Log Service dan buka proyek tujuan.
Di panel navigasi kiri, pilih
Logstores dan temukan Logstore tujuan.Klik
di sebelah kiri namanya untuk memperluas Logstore.Klik Logtail Configuration. Di daftar konfigurasi, temukan konfigurasi Logtail tujuan dan klik Manage Logtail Configuration di kolom Actions.
Di halaman konfigurasi Logtail, klik Edit:
Di , aktifkan Allow File to Be Collected for Multiple Times.
Setelah konfigurasi selesai, klik OK.
Mengapa entri log terakhir dilaporkan setelah penundaan lama? Mengapa terkadang terpotong?
Analisis penyebab: Pemotongan log biasanya terjadi ketika file log tidak memiliki line feed di akhir, atau ketika log multi-baris, seperti stack exception, belum sepenuhnya ditulis. Karena kolektor data tidak dapat menentukan apakah log telah berakhir, bagian akhir konten mungkin terpisah secara prematur atau dilaporkan dengan penundaan. Versi LoongCollector (Logtail) yang berbeda memiliki mekanisme penanganan yang berbeda:
Versi sebelum 1.8:
Jika baris terakhir log tidak memiliki line feed (carriage return), atau jika segmen log multi-baris belum selesai, kolektor data menunggu tulisan berikutnya untuk memicu output. Hal ini dapat menyebabkan entri log terakhir ditahan lama tanpa dikirim, hingga log baru ditulis.Versi 1.8 ke atas:
Mekanisme refresh timeout diperkenalkan untuk mencegah log macet. Ketika baris log yang belum selesai terdeteksi, sistem memulai timer. Setelah timeout, konten saat ini secara otomatis dikirimkan, yang memastikan log akhirnya dikumpulkan.Timeout default: 60 detik (memastikan integritas dalam sebagian besar skenario)
Anda dapat menyesuaikan nilai ini sesuai kebutuhan, tetapi kami tidak merekomendasikan mengaturnya ke 0, karena hal ini dapat menyebabkan pemotongan log atau kehilangan sebagian konten.
Solusi:
Anda dapat memperpanjang waktu tunggu secara tepat untuk memastikan log lengkap ditulis sebelum dikumpulkan:
Masuk ke Konsol Simple Log Service dan buka proyek tujuan.
Di panel navigasi kiri, pilih
Logstores dan temukan Logstore tujuan.Klik
di sebelah kiri namanya untuk memperluas Logstore.Klik Logtail Configuration. Di daftar konfigurasi, temukan konfigurasi Logtail tujuan dan klik Manage Logtail Configuration di kolom Actions.
Di halaman konfigurasi Logtail, klik Edit:
Di , tambahkan konfigurasi JSON berikut untuk menyesuaikan periode timeout:
{ "FlushTimeoutSecs": 1 }Nilai default: Ditentukan oleh parameter startup
default_reader_flush_timeout(biasanya beberapa detik).Unit: Detik.
Nilai yang direkomendasikan: ≥1 detik. Kami tidak merekomendasikan mengaturnya ke 0, karena hal ini dapat menyebabkan pemotongan log atau kehilangan sebagian konten.
Setelah konfigurasi selesai, klik OK.
Mengapa LoongCollector (Logtail) beralih dari titik akhir internal ke titik akhir publik selama operasi? Apakah bisa beralih kembali secara otomatis?
Selama operasi, jika LoongCollector (Logtail) mendeteksi anomali dalam komunikasi dengan titik akhir internal, seperti kegagalan jaringan atau timeout koneksi, sistem secara otomatis beralih ke titik akhir publik untuk transmisi data guna memastikan kelangsungan dan keandalan pengumpulan log serta menghindari penumpukan atau kehilangan log.
LoongCollector: Secara otomatis beralih kembali ke jaringan internal setelah pulih.
Logtail: Tidak beralih kembali secara otomatis. Harus dimulai ulang secara manual untuk melanjutkan komunikasi jaringan internal.
Apendiks: Penjelasan plugin penguraian native
Di halaman Logtail Configuration, di area Processor Configurations, Anda dapat menambahkan plugin pemrosesan untuk menstrukturisasi log mentah. Untuk menambahkan plugin pemrosesan ke konfigurasi pengumpulan yang sudah ada, Anda dapat mengikuti langkah-langkah berikut:
Di panel navigasi kiri, pilih
Logstores dan temukan Logstore tujuan.Klik
di sebelah kiri namanya untuk memperluas Logstore.Klik Logtail Configuration. Di daftar konfigurasi, temukan konfigurasi Logtail tujuan dan klik Manage Logtail Configuration di kolom Actions.
Di halaman konfigurasi Logtail, klik Edit.
Bagian ini hanya memperkenalkan plugin pemrosesan yang umum digunakan yang mencakup skenario pemrosesan log umum. Untuk fitur lainnya, lihat Plugin pemrosesan ekstensi.
Aturan penggabungan plugin (berlaku untuk LoongCollector / Logtail 2.0 ke atas):
Plugin pemrosesan native dan ekstensi dapat digunakan secara independen atau dikombinasikan sesuai kebutuhan.
Kami merekomendasikan menggunakan plugin pemrosesan native terlebih dahulu, karena menawarkan kinerja lebih baik dan stabilitas lebih tinggi.
Ketika fitur native tidak dapat memenuhi kebutuhan bisnis, Anda dapat menambahkan plugin pemrosesan ekstensi setelah plugin native yang dikonfigurasi untuk melakukan pemrosesan tambahan.
Batasan urutan:
Semua plugin dieksekusi secara berurutan sesuai urutan konfigurasinya, yang membentuk rantai pemrosesan. Catatan: Semua plugin pemrosesan native harus mendahului plugin pemrosesan ekstensi apa pun. Setelah Anda menambahkan plugin pemrosesan ekstensi, Anda tidak dapat menambahkan plugin pemrosesan native lagi.
Penguraian ekspresi reguler
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 penguraian ekspresi reguler |
| |
Prosedur: Di halaman Logtail Configuration, di area Processor Configurations, klik Add Processor dan pilih :
Regular Expression: Digunakan untuk mencocokkan log. Anda dapat menghasilkannya secara otomatis atau memasukkannya secara manual:
Generasi otomatis:
Klik Generate Regex Automatically.
Di Log Sample, pilih konten log yang akan diekstraksi.
Klik Generate Regex.
Input manual: Enter Regex Manually berdasarkan format log.
Setelah konfigurasi selesai, klik Validate untuk menguji apakah ekspresi reguler dapat menguraikan konten log dengan benar.
Extracted Field: Atur nama field (Key) yang sesuai untuk konten log yang diekstraksi (Value).
Untuk parameter lain, lihat deskripsi parameter konfigurasi umum di Skenario 2: Logging terstruktur.
Penguraian pemisah
Strukturisasi konten log menggunakan pemisah, yang menguraikannya menjadi beberapa pasangan kunci-nilai. Mendukung pemisah karakter tunggal dan multi-karakter.
Contoh:
Log mentah tanpa pemrosesan apa pun | Pisahkan field berdasarkan karakter yang ditentukan |
| |
Prosedur: Di halaman Logtail Configuration, di area Processor Configurations, klik Add Processor dan pilih :
Delimiter: Tentukan karakter yang digunakan untuk memisahkan konten log.
Contoh: Untuk file CSV, pilih Custom dan masukkan koma (,).
Quote: Ketika nilai field berisi pemisah, Anda perlu menentukan quote untuk mengapit field guna menghindari pemisahan yang salah.
Extracted Field: Atur nama field (Key) yang sesuai untuk setiap kolom sesuai urutan pemisahan. 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 lain, lihat deskripsi parameter konfigurasi umum di Skenario 2: Logging terstruktur.
Penguraian JSON standar
Strukturisasi log JSON bertipe objek, yang menguraikannya menjadi pasangan kunci-nilai.
Contoh:
Log mentah tanpa pemrosesan apa pun | Ekstraksi otomatis kunci-nilai JSON standar |
| |
Prosedur: Di halaman Logtail Configuration, di area Processor Configurations, klik Add Processor dan pilih :
Original Field: Nilai default-nya adalah content. Field ini digunakan untuk menyimpan konten log mentah yang akan diuraikan.
Untuk parameter lain, lihat deskripsi parameter konfigurasi umum di Skenario 2: Logging terstruktur.
Penguraian 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 halaman Logtail Configuration, di area Processor Configurations, klik Add Processor dan pilih :
Original Field: Nama field sumber yang akan diekspansi, misalnya,
content.JSON Expansion Depth: Tingkat ekspansi objek JSON. 0 berarti diekspansi sepenuhnya (default), 1 berarti tingkat saat ini, dan seterusnya.
Character to Concatenate Expanded Keys: Pemisah untuk nama field selama ekspansi JSON. Default-nya adalah garis bawah _.
Name Prefix of Expanded Keys: Tentukan awalan untuk nama field setelah ekspansi JSON.
Expand Array: Aktifkan ini untuk 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, Anda dapat menambahkan plugin Rename Fields setelahnya untuk menyelesaikan pemetaan.
Untuk parameter lain, lihat deskripsi parameter konfigurasi umum di Skenario 2: Logging terstruktur.
Penguraian array JSON
Gunakan fungsi json_extract untuk mengekstrak objek JSON dari array JSON.
Contoh:
Log mentah tanpa pemrosesan apa pun | Ekstrak struktur array JSON |
| |
Prosedur: Di halaman Logtail Configuration, di area Processor Configurations, ubah Processing Method ke SPL, konfigurasikan SPL Statement, dan gunakan fungsi json_extract untuk mengekstrak 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]')Penguraian log Apache
Strukturisasi konten log berdasarkan definisi dalam file konfigurasi log Apache, yang menguraikannya menjadi beberapa pasangan kunci-nilai.
Contoh:
Log mentah tanpa pemrosesan apa pun | Penguraian format log Apache Common |
| |
Prosedur: Di halaman Logtail Configuration, di area Processor Configurations, klik Add Processor dan pilih :
Log Format: combined.
APACHE LogFormat Configuration: Sistem secara otomatis mengisi konfigurasi berdasarkan Log Format.
PentingHarap verifikasi konten yang diisi otomatis untuk memastikan persis sama dengan LogFormat yang didefinisikan dalam file konfigurasi server Apache Anda, yang biasanya terletak di /etc/apache2/apache2.conf.
Untuk parameter lain, lihat deskripsi parameter konfigurasi umum di Skenario 2: Logging terstruktur.
Penguraian log IIS
Strukturisasi konten log berdasarkan definisi format log IIS, yang menguraikannya menjadi beberapa pasangan kunci-nilai.
Contoh perbandingan:
Log mentah | Adaptasi format khusus server Microsoft IIS |
| |
Prosedur: Di halaman Logtail Configuration, di area Processor Configurations, klik Add Processor dan pilih :
Log Format: Pilih format log yang digunakan oleh log server IIS Anda.
IIS: Format file log IIS.
NCSA: Format Log Common NCSA.
W3C: Format File Log Extended W3C.
IIS Configuration Fields: Saat Anda memilih IIS atau NCSA, Simple Log Service mengatur field konfigurasi IIS secara default. Saat Anda memilih W3C, atur ke konten parameter
logExtFileFlagsdalam file konfigurasi IIS Anda. Misalnya: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 lain, lihat deskripsi parameter konfigurasi umum di Skenario 2: Logging terstruktur.
Penyembunyian data
Sembunyikan data sensitif dalam log.
Contoh:
Log mentah tanpa pemrosesan apa pun | Hasil penyembunyian |
| |
Prosedur: Di halaman Logtail Configuration, di area Processor Configurations, klik Add Processor dan pilih :
Original Field: Field sumber yang berisi konten log sebelum penguraian.
Data Masking Method:
const: Mengganti konten sensitif dengan string yang ditentukan.
md5: Mengganti konten sensitif dengan hash MD5-nya.
Replacement String: Saat Anda memilih const untuk Data Masking Method, Anda perlu memasukkan string untuk mengganti konten sensitif.
Content Expression that Precedes Replaced Content: Digunakan untuk menemukan konten sensitif. Konfigurasikan menggunakan sintaks RE2.
Content Expression to Match Replaced Content: Ekspresi untuk konten sensitif. Konfigurasikan menggunakan sintaks RE2.
Penguraian waktu
Uraikan field waktu dalam log dan atur hasil penguraian sebagai field __time__ log.
Contoh:
Log mentah tanpa pemrosesan apa pun | Penguraian waktu |
| Di tampilan detail log SLS, log JSON diuraikan dengan benar menjadi field terstruktur. Setiap field ( |
Prosedur: Di halaman Logtail Configuration, di area Processor Configurations, klik Add Processor dan pilih :
Original Field: Field sumber yang berisi konten log sebelum penguraian.
Time Format: Atur format waktu yang sesuai berdasarkan konten waktu dalam log.
Time Zone: Pilih zona waktu field waktu log. Secara default, menggunakan zona waktu mesin, yaitu zona waktu lingkungan tempat proses LoongCollector (Logtail) berjalan.
Apendiks: Referensi kebijakan akses
Login akun Alibaba Cloud: Akun Alibaba Cloud memiliki semua izin secara default dan dapat melakukan operasi langsung.
Login pengguna RAM: Memerlukan akun Alibaba Cloud untuk memberikan kebijakan akses yang sesuai.
Kebijakan kustom (kontrol detail halus)
Ketika kebijakan sistem tidak dapat memenuhi prinsip hak istimewa minimal, Anda dapat mencapai otorisasi detail halus dengan membuat kebijakan kustom. Berikut adalah contoh kebijakan akses yang mencakup izin-izin ini:
Lihat proyek: Lihat daftar proyek dan detail proyek tertentu.
Kelola Logstore: Buat Logstore baru di bawah proyek, atau modifikasi atau hapus Logstore yang sudah ada.
Kelola konfigurasi pengumpulan: Buat, hapus, dan modifikasi konfigurasi pengumpulan.
Lihat log: Kueri dan analisis data di Logstore tertentu di bawah proyek tertentu.
Ganti${regionName},${uid},${projectName}, dan${logstoreName}dengan nama wilayah, ID akun Alibaba Cloud, proyek tujuan, dan Logstore yang sebenarnya.
Izin | Operasi yang sesuai | Sumber daya |
Proyek hanya baca |
|
|
Dapatkan proyek tertentu |
|
|
Mengelola Penyimpanan Log |
|
|
Kelola ingesti data LoongCollector (Logtail) |
|
|
Kueri pencarian tersimpan |
|
|
Kueri dasbor |
|
|
Kueri log di Logstore tertentu |
|
|
Izin untuk mengoperasikan ECS |
|
|
Izin untuk mengoperasikan OOS (Opsional) Diperlukan hanya ketika LoongCollector (Logtail) diinstal secara otomatis melalui OOS dalam akun dan wilayah yang sama dengan Simple Log Service dan instance ECS. |
|
|
Kebijakan sistem
Jika Anda menggunakan kebijakan sistem yang telah ditentukan, kami merekomendasikan memberikan izin berikut:
AliyunLogFullAccess: Izin untuk mengelola Simple Log Service.AliyunECSFullAccess: Izin untuk mengelola ECS.(Opsional)
AliyunOOSFullAccess: Diperlukan ketika Anda menginstal LoongCollector (Logtail) dengan satu klik menggunakan OOS.