• Home
  • Berita
  • Apa Itu Logstash? Pengertian, Fungsi, dan Cara Kerjanya

Apa Itu Logstash? Pengertian, Fungsi, dan Cara Kerjanya

Oleh Ita Sugiharti
Apa Itu Logstash? Pengertian, Fungsi, dan Cara Kerjanya

Halo, DomaiNesians! Pernah nggak kalian mendengar istilah “Logstash”? Logstash adalah bagian atau komponen “L” dari ELK Stack, yaitu platform analisis log paling populer di dunia yang bertugas mengumpulkan data dari berbagai sumber, memprosesnya, dan mengirimkannya ke dalam pipeline untuk kemudian diindeks langsung ke Elasticsearch.

Komponen ELK Stack yang satu ini bisa mengambil data dari hampir semua sumber menggunakan plugin input, menerapkan berbagai jenis transformasi dan peningkatan data menggunakan plugin filter, serta mengirimkan data ke berbagai tujuan menggunakan plugin output. 

Karena itu, peran Logstash dalam stack sangat penting karena memungkinkan kalian untuk memfilter, mengolah, dan membentuk data sehingga lebih mudah digunakan. Lalu, bagaimana cara kerja dari komponen ELK Stack tersebut? Yuk kita belajar bersama!

Apa Itu Logstash?

Logstash adalah alat pemrosesan data open-source yang digunakan untuk mengambil, mengolah, dan mengirim data dari berbagai sumber ke berbagai tujuan. Tools yang satu ini merupakan bagian dari Elastic Stack (ELK Stack), yang memungkinkan pengumpulan data secara real-time menggunakan arsitektur plugin yang fleksibel, termasuk plugin input, filter, dan output. 

Alat ini biasanya digunakan untuk logging terpusat, transformasi data, dan analisis data secara real-time, seperti mengirim data ke Elasticsearch untuk pencarian atau ke layanan lain untuk analisis lebih lanjut. Dengan menggunakan komponen ELK Stack yang satu ini, kita bisa membuat alur kerja data yang lebih efisien, mengurangi kompleksitas pengelolaan data, dan mendapatkan wawasan lebih cepat dari data yang kita miliki.

Fungsi Utama Logstash

Sebagai alat pemrosesan data, Logstash memiliki beberapa fungsi utama dalam menjalankan tugasnya yaitu sebagai berikut:

1. Pengumpulan Data (Ingestion)

Logstash dapat mengumpulkan data dari berbagai sumber secara real-time, seperti file log, basis data, antrian pesan, atau layanan cloud. Fungsi ini memungkinkan data dari berbagai sistem dikumpulkan dalam satu tempat untuk analisis yang lebih mudah. Dengan begitu, kita bisa melihat gambaran besar dari data yang tersebar di berbagai aplikasi atau server.

2. Transformasi Data (Transformation)

Setelah data terkumpul, Logstash dapat membersihkan, memperkaya, dan mengubahnya sebelum dikirim ke tujuan akhir. Misalnya, data log yang tidak terstruktur bisa diparse untuk mendapatkan informasi penting, menambahkan data geografis berdasarkan IP, atau menghapus informasi sensitif. Hal ini sangat berguna untuk memastikan data yang masuk ke sistem analisis kita jadi lebih bersih, terorganisir, dan siap untuk digunakan.

Baca Juga:  Ide Jualan Online Buat Kamu yang Mau Nambah Duit

3. Pengiriman Data (Output)

Setelah diproses, Logstash dapat mengirim data ke berbagai tujuan, seperti Elasticsearch untuk pencarian, basis data lain untuk penyimpanan, atau sistem pesan untuk distribusi lebih lanjut. Dengan kemampuan ini, kita bisa membangun sistem pemantauan dan analisis yang lebih responsif dan terukur.

Bagaimana Cara Kerja Logstash?

Logstash bekerja dengan menggunakan arsitektur pipeline, yang memproses data melalui tiga tahap utama yaitu input, filter, dan output. Hal ini membuat proses pengelolaan data lebih terstruktur dan mudah diatur, bahkan untuk data yang berasal dari berbagai sumber.

Cara Kerja Logstash

(Sumber: XPLG)

1. Tahap Input

  • Logstash mengambil data dari berbagai sumber melalui plugin input, seperti file log, basis data, antrian pesan, atau layanan cloud.
  • Setiap plugin input dikonfigurasi untuk mengambil data dari sumber tertentu, misalnya plugin file untuk membaca file log atau plugin jdbc untuk mengambil data dari basis data. Dengan fleksibilitas ini, kita bisa mengambil data dari hampir semua jenis sumber.
  • Komponen ELK Stack ini memiliki banyak plugin input untuk berbagai jenis event. Berikut beberapa plugin input yang umum digunakan:
Plugin Fungsi
Beats Plugin ini digunakan untuk mengirim data umum dan log ke Logstash. Contohnya, winlogbeat untuk log event Windows, filebeat untuk konten file.
Cloudwatch Plugin ini dapat mengambil log event dari AWS CloudWatch.
File Plugin ini bisa menangkap event dari file dan mengirimkannya ke Logstash.
Exec Plugin ini menangkap output dari skrip atau perintah shell.
HTTP Plugin ini bisa menerima data dari endpoint menggunakan protokol HTTP.
JDBC Plugin ini digunakan untuk mengambil data dari database yang sesuai dengan JDBC.
Kafka Plugin ini bisa menerima pesan dari topik Kafka.
S3 Plugin ini dapat mengambil event dari file di bucket S3.
SNMP Plugin ini digunakan untuk mengambil log event dari perangkat jaringan menggunakan Simple Network Management Protocol (SNMP).
SQS Plugin ini digunakan untuk menangkap pesan dari antrian AWS Simple Queue Service (SQS).
Syslog Plugin ini mengolah log sistem menggunakan protokol Syslog.
TCP Plugin ini bisa menerima event dari socket TCP.
UDP Plugin ini bisa menangkap event melalui protokol UDP.
Baca Juga:  DevSecOps atau DevOps? Ini Perbedaan dan Keunggulannya

2. Tahap Filter

  • Setelah data diterima, Logstash menggunakan filter untuk memproses data.
  • Plugin filter seperti grok digunakan untuk memecah data yang tidak terstruktur, mutate untuk memodifikasi data, date untuk mengonversi timestamp, dan geoip untuk menambahkan informasi geografis berdasarkan alamat IP.
  • Filter bisa digabungkan untuk menghasilkan transformasi data yang lebih kompleks, memungkinkan kita untuk membuat data lebih bermakna sebelum dianalisis.
  • Filter plugin digunakan untuk memproses data yang masuk. Berikut beberapa filter plugin bawaan Logstash:
Plugin Fungsi
Grok Plugin ini digunakan untuk mengubah data tidak terstruktur menjadi sesuatu yang terstruktur dan mudah untuk di-query.
JSON Plugin ini digunakan untuk mem-parsing data event dari payload JSON.
XML Plugin ini digunakan untuk mem-parsing data event dari payload XML.
CSV Plugin ini mem-parsing data yang dipisahkan dengan koma dan memecahnya menjadi field individu.
Split Plugin ini membagi input event multi-baris menjadi beberapa baris event terpisah.
Clone Plugin ini menggandakan record event.
DNS Plugin ini melakukan reverse DNS lookup dari data event.
GeoIP Plugin ini menambahkan informasi geografis berdasarkan alamat IP pada event input.
Urldecode Plugin ini mendekode field yang di-encode dengan URL.

3. Tahap Output

  • Setelah difilter, data yang telah diproses dikirim ke satu atau lebih tujuan menggunakan plugin output.
  • Tujuan bisa berupa Elasticsearch untuk pencarian, basis data lain untuk penyimpanan, atau konsol untuk debugging. Dengan banyaknya pilihan tujuan, kita bisa menyesuaikan alur data sesuai kebutuhan bisnis kita.
  • Output plugin digunakan untuk mengirim data dari Logstash ke satu atau lebih tujuan. Berikut beberapa output plugin yang umum digunakan:
Plugin Fungsi
WebSocket Plugin ini digunakan untuk mengirim data yang telah difilter atau diproses ke WebSocket.
TCP Plugin ini mengirim data ke socket TCP.
Stdout Plugin ini mengirim data ke output standar.
HTTP Plugin ini bisa mengirim data ke endpoint menggunakan protokol HTTP.
Syslog Plugin ini mengirim data event ke server Syslog.
SNS Plugin ini mendorong data event ke topik AWS Simple Notification Service (SNS).
Pipe Plugin ini digunakan untuk mengalirkan data output ke input aplikasi lain.
File Plugin ini menulis data output ke file disk.
Email Plugin ini mengirim data output ke alamat email yang ditentukan.
Kafka Plugin ini menulis event ke topik Kafka.
MongoDB Plugin ini menulis event ke database MongoDB.
Sink Plugin ini membuang data yang diterima tanpa mengirimnya ke mana pun.
Baca Juga:  Jadi Reseller Domain? Harus Tahu 3 Hal Ini Dulu

Contoh Penggunaan Logstash

Untuk memudahkan pemahaman kita tentang cara kerja komponen ELK Stack yang satu ini, berikut adalah beberapa contoh penggunaan Logstash sebagai alat pengumpul data:

  • Logging Terpusat: Mengumpulkan dan memproses log dari berbagai aplikasi dan server.
  • Transformasi Data: Membersihkan dan memperkaya data sebelum disimpan atau dianalisis.
  • Analisis Real-Time: Mengirim data ke Elasticsearch untuk analisis waktu nyata dengan Kibana.

Contoh Konfigurasi Pipeline

Berikut adalah contoh konfigurasi pipeline dari Logstash:

Alur Kerja Logstash

Lalu, bagaimana urutan atau alur kerja dari Logstash? Berikut adalah alur kerjanya:

  • Pengumpulan Data: Mengambil data dari file log /var/log/syslog.
  • Parsing dan Transformasi: Memecah pesan log menjadi beberapa bagian, seperti timestamp, hostname, program, dan pesan log.
  • Pengiriman Data: Mengirim data yang sudah diproses ke Elasticsearch untuk penyimpanan dan pencarian, serta mencetak ke konsol untuk debugging.

Kesimpulan

Logstash adalah alat yang sangat kuat untuk mengelola dan menganalisis data dari berbagai sumber. Alat ini dirancang untuk memproses data secara real-time, memungkinkan analisis cepat. Tidak hanya itu, komponen penting dari ELK Stack ini juga mendukung berbagai plugin untuk input, filter, dan output, membuatnya sangat fleksibel. Dengan menggunakan file konfigurasi untuk mendefinisikan alur kerja pemrosesan data yang kompleks.

Nah, agar pemrosesan data di perusahaan kalian bisa berjalan lebih aman dan cepat, pastikan kalian menggunakan Cloud VPS dari DomaiNesia. Hal ini karena Cloud VPS dari DomaiNesia sudah terjamin aman dan tersertifikasi ISO. Jadi, tunggu apa lagi? Yuk, order sekarang juga!

Ita Sugiharti

If this post has reached you, then I hope it helps. If you have any questions or feedback, just leave a comment.


Berlangganan Artikel

Dapatkan artikel, free ebook dan video
terbaru dari DomaiNesia

{{ errors.name }} {{ errors.email }}
Migrasi ke DomaiNesia

Migrasi Hosting ke DomaiNesia Gratis 1 Bulan

Ingin memiliki hosting dengan performa terbaik? Migrasikan hosting Anda ke DomaiNesia. Gratis jasa migrasi dan gratis 1 bulan masa aktif!

Ya, Migrasikan Hosting Saya

Hosting Murah

This will close in 0 seconds