APM Tools Comparison: New Relic, DataDog, Dynatrace, Elastic

APM Tools Comparison: New Relic, DataDog, Dynatrace, Elastic

Application Performance Monitoring หรือ APM เป็นหมวดเครื่องมือที่ช่วยให้ทีม DevOps และวิศวกรซอฟต์แวร์ติดตามประสิทธิภาพของแอปพลิเคชันในระดับลึก ทั้งเวลา response, error rate, database query time, CPU/Memory usage และ distributed trace ของ microservices การเลือกเครื่องมือที่เหมาะสมช่วยประหยัดค่าใช้จ่า

OpenTelemetry: Unified Observability Framework

OpenTelemetry: Unified Observability Framework

OpenTelemetry (OTel) เป็นมาตรฐาน Observability ที่รวม Traces, Metrics และ Logs ไว้ในเครื่องมือเดียว ก่อนหน้านี้ผู้พัฒนาต้องใช้ SDK หลายตัว เช่น Prometheus client สำหรับ metrics, Jaeger client สำหรับ traces, Fluentd สำหรับ logs — แต่ละตัวมี API และ format ต่างกัน ทำให้ต้อง instrument code ซ้ำซ้อนและผ

Jaeger Setup: Trace Requests ผ่าน Microservices

Jaeger Setup: Trace Requests ผ่าน Microservices

Jaeger เป็นหนึ่งใน distributed tracing platform ที่ได้รับความนิยมสูงสุดในกลุ่ม cloud-native ด้วยสถาปัตยกรรมที่ยืดหยุ่น รองรับ storage หลายรูปแบบ และมี UI ที่ช่วย visualize trace ได้ดี บทความนี้จะพาไปติดตั้ง Jaeger แบบ all-in-one สำหรับ dev, setup production-grade ด้วย collector แยก, เลือก storage ba

Distributed Tracing คืออะไร? Jaeger vs Zipkin

Distributed Tracing คืออะไร? Jaeger vs Zipkin

ในระบบ microservices หนึ่ง request ของผู้ใช้อาจวิ่งผ่าน service 5-10 ตัวก่อนได้ response กลับ — ถ้าเกิด latency สูงผิดปกติ หรือ error ขึ้นในช่วงใดช่วงหนึ่ง การไล่ดู log แยกทีละ service เป็นเรื่องยากและช้ามาก distributed tracing ถูกออกแบบมาเพื่อตอบโจทย์นี้ โดยติดตาม request ข้ามหลาย service แล้วร้อยเ

Log Rotation และ Log Retention: จัดการ Disk Space สำหรับ Logs

Log Rotation และ Log Retention: จัดการ Disk Space สำหรับ Logs

Log files เป็นข้อมูลสำคัญที่ช่วยให้ทีม ops และ dev ติดตามปัญหา, debug, และเข้าใจพฤติกรรมของระบบ แต่ในขณะเดียวกันถ้าปล่อยให้ log โตขึ้นเรื่อย ๆ โดยไม่จัดการ อาจทำให้ disk เต็ม, service ล่ม, หรือ query ช้าจนใช้งานไม่ได้ การวาง policy เรื่อง log rotation และ retention จึงเป็นพื้นฐานของระบบ production ท

Filebeat: Log Shipper ส่ง Logs ไป Elasticsearch

Filebeat: Log Shipper ส่ง Logs ไป Elasticsearch

ในระบบที่ต้องส่ง logs จำนวนมากจากหลายเซิร์ฟเวอร์ไปเก็บที่ Elasticsearch ส่วนกลาง การเขียนสคริปต์ส่งเองหรือใช้ tool หนัก ๆ อย่าง Logstash บนทุกเครื่องไม่ใช่ทางเลือกที่ดี เพราะกิน resource และจัดการยาก — Filebeat จึงถูกออกแบบมาให้เป็น lightweight log shipper ที่รันบนเครื่อง source ได้อย่างเบาและเสถียร

Elasticsearch + Kibana: Centralized Logging สำหรับ Enterprise

Elasticsearch + Kibana: Centralized Logging สำหรับ Enterprise

เมื่อองค์กรเติบโตจนมี microservices หลักสิบหรือหลักร้อย service กระจายอยู่บนหลายเซิร์ฟเวอร์ การ SSH เข้าไปดู log แต่ละเครื่องทีละตัวเป็นสิ่งที่เป็นไปไม่ได้ — ระบบ centralized logging จึงเป็นหัวใจสำคัญของ production environment ที่ทีม DevOps และ SRE ขาดไม่ได้ Elasticsearch + Kibana (ร่วมกับ Logstash

LogQL: Query Language สำหรับค้นหา Logs ใน Loki

LogQL: Query Language สำหรับค้นหา Logs ใน Loki

เมื่อรวบรวม Logs จากหลาย ๆ service เข้าสู่ Loki แล้ว ขั้นตอนต่อไปคือการค้นหาและวิเคราะห์ Logs เหล่านั้นเพื่อ debug ปัญหา, ตรวจจับ error หรือทำ alerting ซึ่งจำเป็นต้องใช้ภาษา query ที่ออกแบบมาโดยเฉพาะสำหรับ log data — LogQL คือคำตอบ LogQL (Loki Query Language) คือภาษาค้นหา logs ของ Grafana Loki ที่ได

Promtail: Log Collection Agent สำหรับ Loki

Promtail: Log Collection Agent สำหรับ Loki

Promtail เป็น log collection agent ที่ Grafana Labs พัฒนาเพื่อเก็บ log จาก server หรือ container แล้วส่งต่อไปยัง Loki สำหรับจัดเก็บและค้นหา ด้วยโครงสร้างที่เน้น label discovery คล้าย Prometheus แต่ทำงานกับไฟล์ log แทน metric บทความนี้ครอบคลุมวิธีติดตั้ง, การกำหนด scrape target, pipeline แปลง log, re

Loki Architecture: เข้าใจการออกแบบระบบ Log Aggregation

Loki Architecture: เข้าใจการออกแบบระบบ Log Aggregation

Loki เป็น log aggregation system ที่ Grafana Labs ออกแบบมาให้ประหยัดต้นทุนและ scale แบบ horizontal ได้ดีกว่าเดิมมาก ต่างจากระบบเก็บ log แบบเก่าที่ index ทุกฟิลด์ Loki เลือก index เฉพาะ label ทำให้ storage footprint เล็กกว่าและ operate ง่ายขึ้น บทความนี้อธิบาย architecture ของระบบ — component ย่อยแต่

LINE CHAT