ตรวจจับ Log Anomaly อัตโนมัติด้วย Garudust Agent 🦅
ถ้าคุณเคยนั่งไล่ดู log ไฟล์ที่ยาวหลายหมื่นบรรทัดเพื่อหาว่า "มันพังตรงไหน" — บทความนี้เขียนมาเพื่อคุณโดยเฉพาะ
Garudust Agent คือ AI agent runtime ที่เขียนด้วย Rust รองรับการ self-host บน hardware ของคุณเอง และมี skill ชื่อ log-analyst ใน garudust-hub ที่ถูกออกแบบมาสำหรับงานนี้โดยตรง
🤔 ปัญหาจริงที่นักพัฒนาเจอ
ระบบ production ทุกระบบมี log แต่การไล่อ่าน log ด้วยมือมีปัญหาหลายอย่าง:
- ปริมาณมหาศาล — log หลักล้านบรรทัดต่อวัน ไม่มีใครอ่านได้หมด
- Pattern ซับซ้อน — error เดียวกันอาจโผล่ในหลาย format
- เจอช้า — กว่าจะรู้ว่าพัง ผู้ใช้แจ้งมาก่อนแล้ว
- Context ขาด — รู้ว่า error ตรงไหน แต่ไม่รู้ว่า "ก่อนหน้านั้นมีอะไรเกิดขึ้น"
Garudust แก้ปัญหาเหล่านี้ด้วยการให้ LLM อ่านและวิเคราะห์ log แทนคุณ — แบบ real-time หรือ scheduled ก็ได้
🛠️ ติดตั้ง Garudust
วิธีที่ 1 — ใช้ Pre-built Binary (แนะนำ)
# Linux x86_64
wget https://github.com/garudust-org/garudust-agent/releases/latest/download/garudust-*-x86_64-unknown-linux-musl.tar.gz
tar -xzf garudust-*.tar.gz
sudo mv garudust garudust-server /usr/local/bin/
วิธีที่ 2 — Build จาก Source (ต้องมี Rust 1.75+)
git clone https://github.com/garudust-org/garudust-agent
cd garudust-agent
cargo build --release
export PATH="$PATH:$(pwd)/target/release"
ตั้งค่าเริ่มต้น
garudust setup
Wizard จะถามว่าใช้ LLM provider ไหน รองรับทั้ง Anthropic, OpenRouter, vLLM (local), Ollama และ AWS Bedrock
สำหรับคนที่มี GPU และ self-host: ใช้ vLLM กับ model เช่น Qwen3-8B ได้เลยโดยไม่เสียค่า API
export VLLM_BASE_URL=http://localhost:8000/v1 export GARUDUST_MODEL=Qwen/Qwen3-8B-AWQ
📦 ติดตั้ง log-analyst Skill
Skill คือ instruction set แบบ Markdown ที่บอก agent ว่าต้องทำอะไร เมื่อไหร่ อย่างไร
garudust skill install log-analyst
แค่นี้พอ — ครั้งถัดไปที่คุณพูดถึง log, agent จะโหลด skill นี้มาใช้อัตโนมัติ
🔍 ใช้งานจริง: วิเคราะห์ Log ทันที
กรณีที่ 1 — วิเคราะห์ syslog
garudust "วิเคราะห์ /var/log/syslog 500 บรรทัดล่าสุด หา error pattern ที่ผิดปกติ"
ตัวอย่าง output ที่ได้:
🔍 Log Analysis Report — /var/log/syslog
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚠️ ANOMALY DETECTED: Connection timeout spike
→ 47 occurrences ใน 3 นาที (ปกติ < 2/ชั่วโมง)
→ First seen: 14:32:01, Last: 14:35:18
→ Probable cause: Network interface congestion หรือ upstream service down
❌ ERROR Pattern: OOM Killer activated
→ Process: python3 (PID 18423)
→ Memory usage: 7.8GB / 8GB
→ Recommendation: เพิ่ม swap หรือ review memory leak ใน process
✅ ไม่พบ segfault, kernel panic หรือ disk I/O error
กรณีที่ 2 — วิเคราะห์ Application Log
garudust "อ่าน /opt/myapp/logs/app.log แล้วหา:
- Error rate ต่อนาที
- Request ที่ใช้เวลา > 5 วินาที
- Pattern ที่น่าสงสัย
สรุปเป็นภาษาไทย"
กรณีที่ 3 — เปรียบเทียบ Log สองช่วงเวลา
garudust "เปรียบเทียบ /var/log/nginx/access.log ระหว่าง 10:00-11:00 กับ 14:00-15:00
ว่า error rate ต่างกันไหม และ traffic pattern เปลี่ยนแปลงอย่างไร"
⏰ Cron: ตรวจ Log อัตโนมัติ ทุก 30 นาที
นี่คือจุดที่ทำให้ Garudust ต่างจากการรัน script ธรรมดา — agent สามารถ ตัดสินใจเองได้ ว่าสิ่งที่เจอนั้น "ผิดปกติ" หรือเปล่า
GARUDUST_CRON_JOBS="*/30 * * * *=Read /var/log/app.log last 300 lines, detect ERROR or WARNING anomalies, if severity is HIGH report summary with timestamp and probable cause" \
garudust-server --anthropic-key sk-ant-...
แจ้งเตือนผ่าน Telegram อัตโนมัติ
TELEGRAM_TOKEN=your_bot_token \
GARUDUST_CRON_JOBS="*/15 * * * *=Check /var/log/app.log for critical errors in last 15 minutes. If error rate exceeds 10 per minute, send alert to telegram with details" \
garudust-server --anthropic-key sk-ant-...
Agent จะส่ง message ไปยัง Telegram bot ของคุณเองอัตโนมัติเมื่อเจอ anomaly
🏭 Use Case จริง: ระบบ Industrial / Edge AI
สำหรับงาน IoT หรือ Edge AI ที่มี log จากเซนเซอร์หรือกล้องวงจรปิด สามารถทำแบบนี้ได้:
# ตรวจสอบ log จากระบบ OCR กล้อง factory ทุก 1 ชั่วโมง
GARUDUST_CRON_JOBS="0 * * * *=Analyze /opt/vision/logs/ocr_results.log, find rows where confidence_score < 0.6 or recognition_failed = true, count anomaly rate, if > 5% in last hour generate incident report" \
VLLM_BASE_URL=http://localhost:8000/v1 \
GARUDUST_MODEL=Qwen3-8B-AWQ \
garudust-server
ข้อดีคือรันบน local GPU ได้เลย ไม่ต้องส่ง log ออกไปยัง cloud เหมาะมากสำหรับระบบ industrial ที่ข้อมูลเป็น confidential
✏️ เขียน Skill เองสำหรับ Log Format เฉพาะทาง
ถ้า log ของคุณมี format แปลก หรืออยากให้ agent วิเคราะห์แบบเฉพาะเจาะจง เขียน SKILL.md เองได้ใน ~/.garudust/skills/:
---
name: factory-log-analyst
description: Analyze industrial machine log from SMARTSense IDA system
version: 1.0.0
---
เมื่อถูกขอให้วิเคราะห์ log จากระบบ IDA ให้ทำตามนี้:
1. อ่าน log file ด้วย terminal tool
2. หา pattern เหล่านี้ที่บ่งบอกปัญหา:
- confidence_score < 0.5 (OCR accuracy ต่ำผิดปกติ)
- frame_drop_rate > 0.1 (กล้องส่งภาพไม่ครบ)
- roi_timeout (พื้นที่ตรวจสอบไม่ response)
- connection_lost (กล้องหลุด)
3. คำนวณ:
- Anomaly rate ต่อชั่วโมง
- ROI ที่มีปัญหาบ่อยที่สุด
4. สรุปเป็นภาษาไทย ระบุ:
- ความรุนแรง (Critical / Warning / Info)
- เวลาที่เกิด
- สาเหตุที่น่าจะเป็น
- คำแนะนำในการแก้ไข
🔧 Tool เพิ่มเติมจาก garudust-hub
นอกจาก log-analyst skill แล้ว ยังมี tools ใน hub ที่ช่วยงาน log ได้:
# ติดตั้ง tools ที่มีประโยชน์
garudust tool install csv_to_json # แปลง log CSV → JSON
garudust tool install file_info # เช็ค size/encoding ก่อนอ่าน
garudust tool install token_count # เช็คว่า log ยาวเกิน context ไหม
garudust tool install extract_urls # ดึง URL จาก access log
ใช้คู่กันในคำสั่งเดียว:
garudust "ใช้ file_info ดูขนาดของ /var/log/nginx/error.log ก่อน แล้วถ้าไม่เกิน 100KB ให้วิเคราะห์หา anomaly ทั้งหมดที่เกิดขึ้นวันนี้"
📊 เปรียบเทียบ: Garudust vs วิธีเดิม
| Script ธรรมดา (grep/awk) | ELK Stack | Garudust | |
|---|---|---|---|
| ติดตั้ง | ง่าย | ซับซ้อน | ง่าย (binary เดียว) |
| Resource | ต่ำ | สูงมาก (ต้องการ RAM หลาย GB) | ต่ำ (~10MB binary) |
| วิเคราะห์ context | ❌ | ❌ | ✅ (LLM เข้าใจ context) |
| แจ้งเตือนอัตโนมัติ | ต้องเขียนเอง | ✅ | ✅ built-in |
| Self-host | ✅ | ✅ | ✅ |
| ภาษาไทย | ❌ | ❌ | ✅ |
| สรุปสาเหตุ | ❌ | ❌ | ✅ |
🚀 เริ่มต้น 5 นาที
# 1. ติดตั้ง
wget -qO- https://github.com/garudust-org/garudust-agent/releases/latest/download/garudust-$(uname -m)-unknown-linux-musl.tar.gz | tar -xz
sudo mv garudust /usr/local/bin/
# 2. ตั้งค่า
garudust setup
# 3. ติดตั้ง skill
garudust skill install log-analyst
# 4. ลองเลย!
garudust "วิเคราะห์ /var/log/syslog 100 บรรทัดล่าสุด หา error ที่น่าสงสัย"
สรุป
Garudust ไม่ใช่แค่ tool อ่าน log — มันคือ agent ที่เข้าใจ context ของ log และช่วยตัดสินใจว่าอะไรคือ "ปกติ" หรือ "ผิดปกติ" โดยใช้ความสามารถของ LLM
จุดแข็งที่สำคัญสำหรับ DevOps และ Industrial Engineer คือ:
- Self-host ได้ 100% — ไม่ต้องส่ง log ออก cloud
- รองรับ local LLM — ใช้ vLLM + Qwen/LLaMA บน GPU ของตัวเองได้
- ภาษาไทยได้เลย — detect ภาษาอัตโนมัติ ไม่ต้องตั้งค่า
- Cron built-in — ตั้งตรวจอัตโนมัติได้ทันที
🔗 Links:
- GitHub: garudust-org/garudust-agent
- Hub: garudust-org/garudust-hub
- Facebook Community: Garudust Agent Thailand
มีคำถามหรืออยากแลกเปลี่ยนประสบการณ์ใช้ Garudust? comment ได้เลยครับ 🙌
Top comments (0)