สวัสดีครับ อ.ศุภเดช ครับ
วันก่อนไปเจอ Open Source Project ตัวนึงใน Github มา ชื่อว่า StatPing เป็น Network Monitoring Server ขนาดเล็กๆ ใช้งานง่าย แต่ประสิทธิภาพดีมากๆ เลยเอามาแนะนำกัน
Blog ตอนก่อนๆ ตอนนึงผมเขียนเล่าเรื่อง คำสั่ง Ping ที่เป็น คำสั่งพื้นฐานที่ Network Engineer ใช้กันทุกคน หลายๆคนก็เอา Ping นี่แหละมาเช็คว่า Host ที่เราดูแลอยู่เนี่ยมันออนไลน์อยู่หรือเปล่า
แต่ Ping ก็เป็นแค่ ICMP Protocol มันแจ้งแค่ Host อยู่หรือไม่อยู่ แต่มันไม่สามารถลงไปเช็คระดับ Service หรือ Port ได้ แถมมันยัง Notification แจ้งเตือนเวลา Host มันดาวน์ไม่ได้อีกด้วย
ก็เลยมีคนทำพวก Network Monitoring มากมายมาเพื่อแก้ปัญหาในจุดนี้ พวกใช้ฟรีแต่ใช้ยากหน่อยก็อย่างพวก Zabbix / Nagios หรือไม่ก็พวกเสียเงินอย่าง Solarwind อะไรแบบนี้
ทีนี้ ก็ไปเจอ Statping นี่แหละ อ่านความสามารถแล้ว โอ้โห เก่งโคตร ใช้ง่ายมาก กินทรัพยากรเครื่องก็น้อย
- รองรับ Windows / Mac / Linux / Docker / API / EC2 จะรันที่ไหนแบบไหนก็ค่อนข้างหลากหลาย
- มี App บนมือถือด้วยทั้ง iOS และ Android (App บนมือถือเป็นแค่หน้าจอเพื่อเข้ามาดูสถานะของ Server แปลว่าคุณต้องมี Server เพื่อรัน Statping แล้วค่อยใช้ App บนมือถือ Login เข้ามาแก้ไข หรือดูค่าสถานะนะครับ)
- Monitor ได้ 4 Protocol คือ TCP / UDP / HTTP และ ICMP
- ฝั่ง HTTP สามารถ ใช้ได้ทั้ง Get / Post / Delete / Patch / Put ในการ Monitor ค่าสถานะ HTTP Response
- เขียน Regex เพื่อเช็คค่า HTTP Code Status ได้
- มี CSS Template ให้ อยากเปลี่ยน Theme สีเองก็ได้
- รองรับ Notification ค่อนข้างครบในกลุ่มที่ Network Engineer ใช้กัน (Discord / Line / Telegram / Slack / Twilio หริอ Notification ผ่าน Mobile App ก็ได้ )
- ถ้า Notification ข้างบนยังไม่พอ ยังสามารถรัน Shell Script ได้เอง กับ เรียก Webhook เพื่อให้ทำงานอื่นเพิ่มเติมได้อีก
ความสามารถเยอะมาก สามารถดูกราฟสถิติย้อนหลังได้ (ระดับนึง) ตัวอย่างที่ผมใช้บ่อยๆ ก็คือ ถ้า Service ตัวไหน Down ก็ให้มัน Shell เข้าไป Restart Service ซะ
หรือ เก็บค่าสถานะกราฟ Ping ย้อนหลังของเว็บต่างประเทศ เพื่อดู Latency ของ Interlink ในประเทศไทยอะไรแบบนี้ครับ
เรื่องที่ยังมีปัญหาใน Statping ตอนนี้
- จัดหน้า Graph ยังไม่ได้
- ถ้าใส่ Host เข้าไปเยอะๆ จะเจออาการ Database is Locked เพราะ I/O เขียนไม่ทัน ยังไม่ได้ลองทดสอบบน Server ใหญ่ๆว่า จะยังมีปัญหานี้อยู่หรือไม่
- ยังมี Bug Notification อยู่ ตอนนี้ผมทดสอบ Notification ผ่าน แต่มันยังไม่ Notification อะไรมาเลย
โดยรวมๆแล้ว มันก็เจ๋งมากแหละครับ ลองไปโหลดมาทดสอบกันได้ที่