News

Mengatasi Masalah Log Node-RED yang Membengkak di Docker

Eko Susilo Harjo August 24, 2025

Salah satu masalah yang sering ditemui saat menjalankan Node-RED di Docker adalah file log container yang membesar hingga puluhan bahkan ratusan gigabyte. Hal ini bisa membuat server kehabisan storage dan menyebabkan service lain terganggu.

Dalam artikel ini, kita bahas penyebab log Node-RED bisa sangat besar dan bagaimana cara mengatasinya dengan aman.


Penyebab Log Node-RED Membesar

  1. Docker Default Logging (json-file)
    • Secara default, Docker menyimpan semua output stdout dan stderr container ke file JSON.
    • Lokasi file: /var/lib/docker/containers/<container-id>/<container-id>-json.log
    • Tanpa konfigurasi rotasi, file ini akan tumbuh tanpa batas.
  2. Debug Node di Node-RED
    • Debug node yang menampilkan msg.payload besar (misalnya data sensor, base64 image, JSON panjang) akan menulis semuanya ke log.
    • Jika tidak dimatikan, output ini akan menumpuk terus.
  3. Loop Error / Retry
    • Flow yang gagal koneksi (misalnya ke database atau API) bisa spam pesan error setiap detik, membuat log cepat penuh.

Cara Mengecek Log yang Membesar

Gunakan perintah berikut untuk melihat file log yang besar:

sudo du -sh /var/lib/docker/containers/*/*-json.log | sort -hr | head -10

Atau gunakan tool interaktif ncdu:

sudo apt install ncdu -y
sudo ncdu /

Biasanya, file log Node-RED ditemukan berukuran ratusan GB.


Solusi Jangka Pendek (Bebaskan Ruang)

Jika server sudah penuh, segera kosongkan log:

sudo truncate -s 0 /var/lib/docker/containers/<container-id>/<container-id>-json.log

Ini akan langsung mengosongkan file tanpa menghentikan container.
Container tetap berjalan normal, hanya log lama yang hilang.


Solusi Jangka Panjang (Cegah Log Membengkak Lagi)

1. Aktifkan Log Rotation di Docker Compose

Edit docker-compose.yml Node-RED Anda:

services:
  node-red:
    image: nodered/node-red
    logging:
      driver: "json-file"
      options:
        max-size: "50m"
        max-file: "5"

Lalu recreate container:

docker-compose down
docker-compose up -d

Dengan konfigurasi ini, log Node-RED maksimal hanya 250 MB (50MB Ă— 5 file).


2. Kurangi Debug Output di Node-RED

  • Matikan debug node yang tidak penting.
  • Jangan tampilkan payload besar ke console.
  • Gunakan database, file, atau dashboard untuk menyimpan data, bukan debug node.

3. Monitor Log Secara Berkala

Gunakan perintah ini untuk memantau log besar:

sudo find /var/lib/docker/containers/ -name "*-json.log" -size +100M

Atau otomatisasi dengan cron job untuk peringatan.


Kesimpulan

  • Log Node-RED bisa membengkak karena kombinasi debug berlebihan + Docker json-file log tanpa rotasi.
  • Solusi cepat: truncate file log besar.
  • Solusi permanen: aktifkan log rotation di Docker Compose dan kurangi debug output di flow Node-RED.

Dengan langkah-langkah ini, Anda tidak akan lagi mengalami masalah server penuh hanya karena log Node-RED.


👉 Tips tambahan: kalau Node-RED dipakai di production, selalu gunakan log rotation + monitoring sejak awal untuk menghindari kejadian disk penuh.


Discover more from teknologi now

Subscribe to get the latest posts sent to your email.

Pengenalan Go 1.25 baru saja rilis dan bawa banyak peningkatan yang bikin hidup developer lebih gampang. Di artikel ini, kita bakal bahas tiga fitur paling menonjol: DWARF v5 untuk debugging yang lebih ringan, go doc -http yang menyiapkan server dokumentasi lokal dalam hitungan detik, serta interface XOF untuk hash yang output‑nya bisa diperpanjang. Semua dijelaskan dengan […]

News

Change Data Capture (CDC)

Eko Susilo Harjo

28 August 2025

Di era digital, sistem ERP (Enterprise Resource Planning) menjadi tulang punggung perusahaan. Semua proses – mulai dari keuangan, HR, inventori, hingga produksi – bertumpu pada data yang terus berubah setiap detik.Tantangannya: bagaimana cara menampilkan data yang selalu up-to-date tanpa membebani server? Jawabannya ada pada teknologi Change Data Capture (CDC). Apa itu CDC? Change Data Capture […]

Pengantar MLOps (Machine Learning Operations) adalah gabungan praktik DevOps yang diterapkan pada seluruh siklus hidup model AI. Dengan MLOps, tim dapat memindahkan model dari notebook eksperimen ke produksi secara reliable, terukur, dan otomatis. Artikel ini bakal ngasih blueprint praktis untuk developer, data scientist, dan platform engineer yang mau membangun sistem ML produksi. Siklus Hidup MLOps […]

Discover more from teknologi now

Subscribe now to keep reading and get access to the full archive.

Continue reading