Logstash menggunakan pipeline untuk mengumpulkan dan memproses data. Konfigurasi pipeline terdiri dari plugin input, output, dan filter opsional. Anda dapat menggunakan plugin input dan output untuk mengonfigurasi sumber dan tujuan data, serta plugin filter untuk menyaring atau memproses data sebelumnya. Alibaba Cloud Logstash mendukung hingga 20 pipeline yang berjalan secara paralel. Topik ini menjelaskan cara mengelola pipeline menggunakan file konfigurasi, termasuk membuat, mengubah, menyalin, dan menghapus pipeline.
Prasyarat
Instans Alibaba Cloud Elasticsearch telah dibuat.
Untuk informasi selengkapnya, lihat Buat instans Alibaba Cloud Elasticsearch.
Fitur pembuatan indeks otomatis diaktifkan untuk instans Alibaba Cloud Elasticsearch tujuan, atau indeks beserta pemetaannya telah dibuat terlebih dahulu di instans tersebut. Topik ini menggunakan fitur pembuatan indeks otomatis sebagai contoh.
Untuk informasi selengkapnya tentang cara mengaktifkan pembuatan indeks otomatis, lihat Konfigurasi parameter YML. Untuk informasi selengkapnya tentang cara membuat indeks dan pemetaan, lihat Panduan pemula: Dari pembuatan instans hingga pengambilan data.
CatatanUntuk menjamin keamanan data, Alibaba Cloud Elasticsearch secara default mengatur pengaturan Auto Create Index ke Not Allowed. Karena Alibaba Cloud Logstash membuat indeks dengan mengirimkan data, bukan dengan memanggil Create index API, Anda harus mengatur Auto Create Index ke Allowed untuk kluster tersebut atau membuat indeks dan pemetaan terlebih dahulu sebelum menggunakan Alibaba Cloud Logstash untuk mengunggah data.
Instans Alibaba Cloud Logstash telah dibuat.
Untuk informasi selengkapnya, lihat Buat instans Alibaba Cloud Logstash.
Batasan
Alibaba Cloud Logstash mendukung maksimal 20 pipeline yang berjalan secara paralel.
Jika sumber data yang ditentukan dalam output adalah instans Alibaba Cloud Elasticsearch, Anda harus mengaktifkan pembuatan indeks otomatis atau membuat indeks dan pemetaan tujuan terlebih dahulu.
Saat mengonfigurasi produk Alibaba Cloud, instans harus berada dalam virtual private cloud (VPC) yang sama. Jika tidak, Anda harus mengonfigurasi pengaturan jaringan dan keamanan. Untuk informasi selengkapnya, lihat Konfigurasi NAT untuk transmisi data jaringan publik.
Jika Anda menggunakan parameter file_extend dalam output, Anda harus terlebih dahulu menginstal plugin logstash-output-file_extend. Untuk informasi selengkapnya, lihat Instal atau uninstal plugin.
Buat pipeline
Buka halaman Logstash Clusters di Konsol Alibaba Cloud Elasticsearch.
Arahkan ke kluster target.
Di bilah navigasi atas, pilih wilayah tempat kluster berada.
Pada halaman Logstash Clusters, temukan kluster tersebut lalu klik ID-nya.
Di panel navigasi kiri, klik Pipeline Management.
Klik Create Pipeline.
Masukkan Pipeline ID dan Config Content.
Kode berikut memberikan contoh konfigurasi.
input { beats { port => 8000 } } filter { } output { elasticsearch { hosts => ["http://es-cn-o40xxxxxxxxxx****.elasticsearch.aliyuncs.com:9200"] index => "logstash_test_1" password => "es_password" user => "elastic" } file_extend { path => "/ssd/1/ls-cn-v0h1kzca****/logstash/logs/debug/test" } }Parameter
Deskripsi
input
Menentukan sumber data masukan. Untuk informasi selengkapnya tentang jenis sumber data yang didukung, lihat Input plugins.
CatatanSaat plugin Input perlu mendengarkan pada port node tempat proses Logstash berjalan, gunakan port dalam rentang 8000 hingga 9000.
Untuk mendefinisikan plugin, driver, atau file lain pada input, klik View Extension File Path. Pada kotak dialog Extension File Management, klik Upload dan unggah file yang sesuai mengikuti petunjuk yang muncul. Untuk informasi selengkapnya, lihat Mengonfigurasi file ekstensi.
filter
Menentukan plugin untuk menyaring data masukan. Untuk informasi selengkapnya tentang jenis plugin yang didukung, lihat Filter plugins.
output
Menentukan jenis sumber data tujuan. Untuk informasi selengkapnya tentang jenis sumber data yang didukung, lihat Output plugins.
file_extend: Opsional. Mengaktifkan fitur log debug dan menggunakan parameter path untuk mengonfigurasi jalur output log debug. Konfigurasikan parameter ini untuk melihat hasil output langsung di konsol. Jika parameter ini tidak dikonfigurasi, Anda harus membuka tujuan untuk memastikan hasil output lalu kembali ke konsol untuk melakukan perubahan, yang memakan waktu. Untuk informasi selengkapnya, lihat Gunakan konfigurasi pipeline Logstash untuk debugging.
PentingSebelum menggunakan parameter file_extend, instal plugin logstash-output-file_extend. Untuk informasi selengkapnya, lihat Instal atau uninstal plugin. Parameter path secara default menggunakan jalur yang ditentukan sistem. Jangan ubah nilai tersebut. Anda juga dapat mengklik Enable Configuration Debugging untuk mendapatkan nilai path.
Untuk informasi selengkapnya tentang struktur file konfigurasi dan tipe data yang didukung—yang mungkin berbeda tergantung versinya—lihat Structure of a Config File.
PentingUntuk keamanan, saat menggunakan driver Java Database Connectivity (JDBC) dan mengonfigurasi pipeline, tambahkan
allowLoadLocalInfile=false&autoDeserialize=falseke parameter jdbc_connection_string. Jika tidak, sistem pemetaan CDN akan melaporkan kegagalan validasi saat Anda menambahkan file konfigurasi Logstash. Contohnya:jdbc_connection_string => "jdbc:mysql://xxx.drds.aliyuncs.com:3306/<database_name>?allowLoadLocalInfile=false&autoDeserialize=false".Jika konfigurasi berisi parameter seperti last_run_metadata_path, layanan Alibaba Cloud Logstash harus menyediakan jalur file. Backend menyediakan jalur /ssd/1/<Logstash_instance_ID>/logstash/data/ untuk pengujian. Data dalam direktori ini tidak dihapus. Oleh karena itu, pastikan tersedia disk space yang cukup. Setelah Anda menentukan jalur untuk parameter tersebut, Logstash akan secara otomatis membuat file di jalur yang sesuai. Anda tidak dapat melihat isi file tersebut.
Karena Alibaba Cloud Logstash dibuat dalam VPC, Anda harus menggunakan instans dalam VPC yang sama saat mengonfigurasi produk Alibaba Cloud. Jika Anda mengakses Alibaba Cloud Logstash dari jaringan publik, Anda harus mengonfigurasi pengaturan jaringan dan keamanan. Untuk informasi selengkapnya, lihat Konfigurasi NAT untuk transmisi data jaringan publik.
Gunakan file_extend untuk pencetakan log selama pengujian. Jangan gunakan stdout.
Klik Next dan konfigurasikan parameter pipeline.

Parameter
Deskripsi
Pipeline Workers
Jumlah thread pekerja untuk menjalankan tahap filter dan output pipeline secara paralel. Jika event tertunda atau CPU belum jenuh, pertimbangkan untuk menambah jumlah thread agar lebih memanfaatkan daya pemrosesan CPU. Nilai default: jumlah core CPU instans.
Pipeline Batch Size
Jumlah maksimum event yang dapat dikumpulkan oleh satu thread pekerja dari input sebelum mencoba mengeksekusi filter dan output. Ukuran batch yang lebih besar dapat menyebabkan overhead memori yang lebih tinggi. Anda dapat meningkatkan ukuran heap JVM dengan mengatur variabel LS_HEAP_SIZE agar nilai ini efektif. Nilai default: 125.
Pipeline Batch Delay
Durasi dalam milidetik untuk menunggu setiap event sebelum mengirimkan batch kecil ke thread pekerja pipeline. Nilai default: 50 ms.
Queue Type
Model antrian internal untuk buffering event. Nilai yang valid:
MEMORY: Default. Antrian tradisional berbasis memori.
PERSISTED: Antrian berbasis disk dengan ACK (antrian persisten).
Queue Max Bytes
Jumlah maksimum data yang dapat disimpan oleh antrian, dalam
MB. Nilainya harus berupa bilangan bulat dari1hingga2<sup>53</sup>-1. Nilai default adalah1024 MB.CatatanPastikan nilai ini lebih kecil dari total kapasitas disk.
Queue Checkpoint Writes
Saat antrian persisten diaktifkan, ini adalah jumlah maksimum event yang dapat ditulis sebelum checkpoint dipaksakan. Nilai 0 berarti tanpa batas. Nilai default: 1024.
PeringatanSetelah menyelesaikan konfigurasi, Anda harus menyimpan dan menerapkannya agar perubahan berlaku. Operasi ini akan merestart instans. Lanjutkan langkah-langkah berikut hanya jika restart tidak memengaruhi bisnis Anda.
Klik Save atau Save and Deploy.
Save: Menyimpan konfigurasi pipeline di Logstash. Konfigurasi tidak berlaku hingga diterapkan. Setelah menyimpan, Anda akan dikembalikan ke halaman Pipeline Management. Di bagian Pipeline List, klik Deploy Now di kolom Actions untuk merestart instans dan menerapkan konfigurasi.
Save and Deploy: Menyimpan dan menerapkan konfigurasi. Ini akan merestart instans dan menerapkan konfigurasi.
Di pesan sukses, klik Confirm. Pipeline yang baru dibuat akan muncul di Pipeline List.
Tugas pipeline dibuat setelah instans direstart.
Ubah pipeline
Mengubah pipeline lalu menyimpan dan menerapkan perubahan akan merestart instans. Lakukan operasi ini hanya jika restart tidak memengaruhi bisnis Anda.
Di bagian Pipeline List, temukan pipeline target, lalu di kolom Actions, klik Modify Pipeline.
Di halaman Modify Pipeline Task, Anda dapat mengubah Config Content dan Pipeline Parameters. Pipeline ID tidak dapat diubah.
Klik Save atau Save and Deploy. Pipeline akan diperbarui setelah instans direstart.
Salin pipeline
Menyalin pipeline lalu menyimpan dan menerapkannya akan merestart instans. Lakukan operasi ini hanya jika restart tidak memengaruhi bisnis Anda.
Di bagian Pipeline List, temukan pipeline yang ingin disalin, lalu pilih di kolom Actions.
Di halaman Copy Pipeline Task, ubah Pipeline ID dan biarkan konfigurasi lainnya tetap sama.
Klik Save atau Save and Deploy. Setelah instans direstart, pipeline akan disalin.
Hapus pipeline
Pipeline yang dihapus tidak dapat dipulihkan, dan tugas pipeline yang sedang berjalan akan terganggu. Konfirmasi operasi sebelum melanjutkan.
Menghapus pipeline memicu perubahan instans. Lakukan operasi ini hanya jika perubahan tersebut tidak memengaruhi bisnis Anda.
Di bagian Pipeline List, temukan pipeline yang ingin dihapus, lalu pilih di kolom Actions.
Di kotak dialog Delete Pipeline, tinjau peringatan tersebut.
Klik Continue. Pipeline akan dihapus setelah perubahan instans selesai.
Referensi
Dokumentasi API untuk membuat pipeline: CreatePipelines
Praktik terbaik untuk migrasi data menggunakan Logstash: Migrasi data Elasticsearch self-managed ke Alibaba Cloud menggunakan Alibaba Cloud Logstash
Praktik terbaik untuk sinkronisasi data MySQL menggunakan Logstash: Sinkronisasi data dari database RDS for MySQL ke Elasticsearch menggunakan Logstash
Sinkronisasi data log dengan Logstash: Petunjuk penggunaan plugin logstash-input-sls
> Copy Pipeline