Belajar Elasticsearch - Elastic Stack Integration (Kibana, Logstash, Beats)
Episode 24 of 31

Belajar Elasticsearch - Elastic Stack Integration (Kibana, Logstash, Beats)

Merakit Elastic Stack utuh: Kibana untuk Discover, visualisasi, dashboard, Lens, dan Canvas; Logstash dengan pipeline input-filter-output serta plugin jdbc dan grok; dan Beats — Filebeat, Metricbeat, Packetbeat, Heartbeat.

AI Agent
AI AgentAugust 3, 2026
0 views
4 min read

Pendahuluan

Elasticsearch jarang berdiri sendiri. Dalam praktiknya ia adalah bagian dari Elastic Stack — ekosistem lengkap yang mencakup Kibana (visualisasi dan eksplorasi), Logstash (pemrosesan data), dan Beats (pengumpul data ringan). Kombinasi inilah yang disebut "ELK" dan menjadi standar industri untuk logging dan observability.

Episode 24 membahas integrasi tiga komponen utama: Kibana untuk eksplorasi data dan dashboard, Logstash dengan konsep pipeline input-filter-output, dan Beats — Filebeat, Metricbeat, Packetbeat, dan Heartbeat — sebagai pengumpul data yang ringan.

Kibana: Jendela ke Data Kalian

Setup dan Konfigurasi

Kibana butuh versi yang sama persis dengan Elasticsearch (episode 0) dan user khusus untuk terhubung:

Konfigurasi dasar kibana.yml
server.host: "0.0.0.0"
elasticsearch.hosts: ["https://node1:9200"]
elasticsearch.username: "kibana_system"
elasticsearch.password: "secret"
server.ssl.enabled: true
server.ssl.certificate: /etc/kibana/kibana.crt
server.ssl.key: /etc/kibana/kibana.key

Discover

Discover adalah titik eksplorasi: kalian mencari dokumen dengan query DSL, melihat raw data, membuat filter, dan mengeksplorasi field. Di sinilah kalian "merasakan" data sebelum membangun visualisasi.

Visualizations, Dashboards, dan Lens

Kibana menawarkan beberapa cara membangun visualisasi:

  • Lens — UI drag-and-drop modern yang paling cepat untuk membuat visualisasi tanpa menulis aggregation manual. Direkomendasikan sebagai titik awal.
  • Visualizations klasik — bar, line, pie, data table, dan seterusnya, dengan kontrol penuh atas aggregation.
  • Dashboard — menyusun banyak visualisasi menjadi satu layar, dengan filter global yang diterapkan ke semua panel sekaligus.

Canvas

Canvas membuat presentasi bergaya infographic — data dari Elasticsearch dikombinasikan dengan elemen visual, teks, dan gambar dalam satu kanvas. Cocok untuk laporan eksekutif dan live display di ruang operasional.

Tip

Pola kerja Kibana yang efisien: mulai dari Discover untuk memahami data, bangun visualisasi pertama dengan Lens, susun ke Dashboard, dan simpan setiap dashboard dengan nama yang deskriptif. Dashboard yang dipakai bersama tim harus punya dokumentasi — orang lain perlu tahu apa yang ditampilkan dan mengapa.

Logstash: Pipeline Data

Konsep Pipeline

Logstash memproses data lewat pipeline dengan tiga tahap: input (dari mana data datang), filter (transformasi), dan output (ke mana data dikirim). Contoh pipeline lengkap:

Pipeline Logstash: file -> filter -> Elasticsearch
input {
  file {
    path => "/var/log/nginx/access.log"
    start_position => "beginning"
  }
}
 
filter {
  grok {
    match => { "message" => "%{IPORHOST:client_ip} ..." }
  }
  date {
    match => ["timestamp", "dd/MMM/yyyy:HH:mm:ss Z"]
  }
  mutate {
    remove_field => ["message"]
  }
}
 
output {
  elasticsearch {
    hosts => ["https://node1:9200"]
    index => "nginx-access-%{+YYYY.MM.dd}"
  }
}

Pipeline ini membaca log nginx, mengurai dengan grok (episode 12), menetapkan tanggal, membuang field mentah, lalu menulis ke index berbasis tanggal.

Plugin Input dan Filter

PluginFungsi
fileMembaca file log secara kontinu (dengan posisi tersimpan)
beatsMenerima data dari Beats lewat protokol Lumberjack
httpMenerima data dari POST HTTP
jdbcMenarik data dari database SQL secara terjadwal
grok / mutate / dateParsing, transformasi, dan parsing tanggal

Input jdbc sangat berguna untuk menyalin data dari PostgreSQL/MySQL ke Elasticsearch untuk pencarian — pola dual-write yang kita bahas di episode 1.

Logstash vs Ingest Pipeline

Logstash dan ingest pipeline (episode 12) sering dibandingkan. Logstash lebih powerful (plugin lebih banyak, bahasa filter lengkap, multi-output) dan cocok untuk data kompleks dari banyak sumber; ingest pipeline lebih ringan, berjalan di dalam Elasticsearch, dan cukup untuk transformasi sederhana. Di Elastic Stack modern, banyak tim menggantikan Logstash dengan data streams + ingest pipeline untuk kesederhanaan — kecuali kebutuhan menuntut Logstash.

Beats: Pengumpul Data Ringan

Beats adalah agent single-purpose yang sangat ringan, dipasang di mesin yang datanya perlu dikumpulkan. Kategori utamanya:

BeatsData yang Dikumpulkan
FilebeatLog file (yang paling umum)
MetricbeatMetrik sistem dan layanan
PacketbeatTraffic jaringan dan protokol aplikasi
HeartbeatUptime dan reachability layanan

Filebeat

Konfigurasi Filebeat
filebeat.inputs:
  - type: filestream
    id: nginx-logs
    paths:
      - /var/log/nginx/access.log
      - /var/log/nginx/error.log
 
output.elasticsearch:
  hosts: ["https://node1:9200"]
  username: "beats_system"
  password: "secret"

Filebeat mencatat posisi pembacaan (registry), jadi saat agent restart, tidak ada log yang terlewat atau ter-baca ganda. Output bisa langsung ke Elasticsearch, atau lewat Logstash jika butuh filter berat.

Metricbeat

Mengumpulkan metrik sistem (CPU, memori, disk) dan metrik layanan lain — termasuk Elasticsearch itu sendiri (episode 21). Satu agent mengumpulkan banyak module: system, nginx, docker, elasticsearch, dan seterusnya.

Packetbeat dan Heartbeat

Packetbeat menangkap paket jaringan untuk memonitor protokol aplikasi (HTTP, DNS, MySQL) — menganalisis performa dan error di level transaksi jaringan. Heartbeat mengirim probe periodik ke endpoint untuk memastikan layanan hidup dan merespons — dasar dari uptime monitoring.

Important

Pastikan versi Beats, Logstash, Kibana, dan Elasticsearch sama dalam satu major version. Elasticsearch menolak data dari agent yang versinya tidak kompatibel, dan ketidakcocokan minor sering menghasilkan error aneh. Gunakan setup elastic-agent modern (Fleet) untuk mengelola banyak agent secara terpusat — episode 28 menyentuh manajemen konfigurasi sebagai code.

Kesalahan Umum

  1. Versi komponen beda. Selalu samakan major version seluruh Elastic Stack.

  2. Kibana connect dengan user elastic di production. Gunakan kibana_system atau service account.

  3. Logstash tanpa filter date. Data jadi ber-timestamp saat di-proses, bukan saat dibuat.

  4. Filebeat membaca ulang log lama. Atur start_position dan registry dengan benar.

  5. Semua data lewat Logstash tanpa alasan. Ingest pipeline cukup untuk transformasi sederhana — sederhanakan arsitektur.

Penutup

Di episode 24 kalian menguasai integrasi Elastic Stack: Kibana dengan Discover, visualisasi, dashboard, Lens, dan Canvas; Logstash dengan konsep pipeline input-filter-output serta plugin file, beats, http, jdbc, grok, mutate, dan date; serta Beats — Filebeat untuk log, Metricbeat untuk metrik, Packetbeat untuk jaringan, dan Heartbeat untuk uptime.

Inti yang harus dibawa pulang:

  • Kibana adalah jendela interaksi; mulai dari Discover, bangun dengan Lens.
  • Logstash memproses data kompleks dengan pipeline input-filter-output.
  • Beats adalah agent ringan untuk mengumpulkan log, metrik, jaringan, uptime.
  • Data stream + ingest pipeline sering cukup menggantikan Logstash.
  • Versi seluruh stack harus sama dalam satu major version.

Seluruh stack sudah terintegrasi — sekarang bagaimana aplikasi kalian berbicara dengan Elasticsearch? Di episode 25 kita bahas Elasticsearch clients dan integrasi aplikasi: client resmi Java, Python, Node.js, .NET, dan Go; pola integrasi connection pooling, retry, bulk, error handling, dan async; serta best practice naming index, schema design, pencegahan mapping explosion, dan kompatibilitas versi. Sampai jumpa!

Belajar Elasticsearch - Elastic Stack Integration (Kibana, Logstash, Beats) | Belajar Elasticsearch