Cara Bangun AI Agent Monitoring & Auto‑Remediation Infrastruktur dengan n8n + GPT (Tanpa Coding Berat)
· 3 menit baca
Cara Bangun AI Agent Monitoring & Auto‑Remediation Infrastruktur dengan n8n + GPT (Tanpa Coding Berat)
Pernah merasa alarm monitoring malah bikin stress karena banyak false‑positive atau harus manual fix tiap alert? Itu masalah klasik tim ops di mana‑mana. Di artikel ini kita akan mengganti proses monitoring tradisional dengan AI Agent yang tidak hanya mendeteksi anomali, tapi juga menyarankan atau mengeksekusi perbaikan secara otomatis—semua dibangun di atas n8n dan GPT.
Kenapa AI Agent + n8n?
- Orkestrasi visual: n8n memberi canvas drag‑and‑drop, jadi Anda tidak perlu menulis boilerplate code.
- Prompt‑driven intelligence: GPT‑4/3.5 dapat menganalisa log, metric, atau traceback, kemudian menghasilkan tindakan yang tepat.
- Skalabilitas & biaya: Hanya panggil LLM saat dibutuhkan, fallback ke rule‑based bila tidak.
Arsitektur High‑Level
Diagram dibawah menggambarkan alur kerja:
[Prometheus Alert] → n8n webhook → AI Agent (GPT) →
{Jika "simple fix"} → n8n execute command (SSH / API) →
{Jika "complex"} → tiket Jira + notifikasi Slack
Inti dari workflow adalah GPT Prompt Node yang menerima payload alert, men‑generate JSON aksi, lalu node IF men‑route ke langkah eksekusi atau eskalasi.
1️⃣ Kumpulkan Data Monitoring
- Gunakan
Prometheus AlertmanageratauGrafana Cloud Alertsyang mengirim POST ke endpoint n8n (HTTP Request Trigger). - Payload biasanya berisi
labels,alertname,value,summary, danseverity.
2️⃣ AI Agent Prompt Engineering
Prompt harus deterministik dan kontekstual. Contoh:
You are an AI Ops Engineer. Analyze the following alert and suggest ONE JSON action.
Alert:
{{ $json }}
Berikan contoh output yang di‑expect:
{ "action": "restart_service", "service": "nginx", "host": "web-01", "comment": "CPU usage > 90% for 5m" }
Jika tidak dapat auto‑fix, balas:
{ "action": "create_ticket", "title": "High CPU on web-01", "description": "..." }
3️⃣ Parsing & Routing di n8n
Functionnode: parse JSON string dari GPT.Ifnode: cekaction== "restart_service".SSHatauHTTP Requestnode: jalankan perintahsystemctl restart {{service}}pada host yang ditentukan (gunakan credential store).- Jika aksi
create_ticket, gunakanJiranode atauSlackuntuk notifikasi.
4️⃣ Fallback & Safety Net
- Tambahkan
Rate Limitnode untuk mencegah loop auto‑restart. - Log semua keputusan ke
MongoDBatauGoogle Sheetuntuk audit. - Gunakan
Delay+Retrynode bila eksekusi gagal.
Use Case Real: Auto‑Remediate High CPU pada Web Server
Scenario: Prometheus memicu alert CPUHigh ketika node_cpu_seconds_total > 90% selama 5 menit.
- Alert terkirim ke n8n webhook.
- GPT menerima payload, mengidentifikasi bahwa restart
nginxbiasanya memperbaiki spike CPU karena worker leak. - n8n mengeksekusi
sshkeweb-01dan menjalankansystemctl restart nginx. - Jika restart gagal, GPT meng‑output
create_ticketdan workflow meng‑post tiket ke Jira serta mengirim Slack alert ke #ops. - Semua langkah tercatat di Google Sheet "Ops Auto‑Remediation Log" untuk review mingguan.
Strategi & Insight Penting
- Prompt versioning: Simpan setiap prompt di Git; gunakan CI untuk test output dengan contoh alert.
- Model fallback: Pada jam sibuk, gunakan
gpt‑3.5‑turbo(lebih murah) untuk simple fix, dan hanya panggilgpt‑4bilaseverity=critical. - Safety‑first: Selalu kirim
dry‑runfirst (GPT menghasilkan perintah + flag--dry‑run) dan log hasilnya sebelum eksekusi real. - Observability: Tambahkan
Prometheus Exporterdi workflow untuk meng‑expose metricsauto_remediate_success_totaldanauto_remediate_failed_total. - Human‑in‑the‑loop: Untuk aksi yang mengubah state kritis (mis. DB migration), gunakan approval step via Slack button sebelum melanjutkan.
Langkah Praktis: Bangun Workflow dalam 30 Menit
- Deploy n8n (Docker compose) dengan
n8n.ioURL publik. - Aktifkan
Webhooknode, copy URL kealertmanager.yml. - Tambahkan
HTTP Requestnode ke OpenAI API (setmodel=gpt-4,temperature=0). - Masukkan prompt template di “Body Parameters”.
- Gunakan
Functionnode untukJSON.parse(item.json.body). - Setup
If→SSH(credential store) →Jira/Slacknodes. - Test dengan curl:
curl -X POST -H "Content-Type: application/json" -d '{"alertname":"CPUHigh","value":95,"host":"web-01"}' {WEBHOOK_URL} - Iterasi prompt sampai hasil akurat; commit ke repo.
Penutup & Call to Action
Dengan kombinasi n8n visual orchestration dan kekuatan GPT, Anda dapat mengurangi noise monitoring hingga 70 % dan menurunkan MTTR (Mean Time To Recovery) secara drastis. Mulailah dengan satu alert, perbaiki prompt, dan skalakan ke seluruh stack Anda.
👉 Challenge: Pilih alert kritis di lingkungan Anda, implementasikan workflow di atas, dan ukur penurunan false‑positive serta waktu respons. Share hasilnya di komunitas JIPRAKS Classroom!