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
- Docker Default Logging (json-file)
- Secara default, Docker menyimpan semua output
stdout
danstderr
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.
- Secara default, Docker menyimpan semua output
- 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.
- Debug node yang menampilkan
- 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.