หลังจากที่ใช้งาน OpenTracing มานาน
ซึ่งตอนนี้ OpenTracing ได้รวมเข้ากับ OpenCensus แล้ว
มีชื่อว่า OpenTelemetry
จึงมาลองศึกษาและใช้งานดูกันหน่อย
ปล. พบว่า library มีการเปลี่ยนเยอะมาก ๆ
ก็พอจะนำไปใช้งานได้
แต่ต้องเรียนรู้เพิ่มกันหน่อย
OpenTelemetry คืออะไร
คือกลุ่มของ API, SDK, เครื่องมือ
รวมทั้งแนวทางการ integrate เข้ากับระบบงานต่าง ๆ
สำหรับการสร้างและดูแลรูปแบบข้อมูล telemetry ให้เป็นมาตรฐาน
นั่นก็คือรูปแบบข้อมูลของทั้ง trace, metric และ log
จะต่างกับ OpenTracing ที่เน้นเฉพาะเรื่องของ trace เท่านั้น
ซึ่งจะเรียกว่า Data Source
โครงสร้างของการทำงานดังรูป
โดยเป้าหมายหลัก ๆ คือ เรื่องของความยืดหยุ่นในการใช้งาน
เพื่อให้ทำงานได้ระบบที่เป็น opensource และ commercial
รวมทั้งสามารถนำข้อมูลที่ได้ ไปเก็บยังที่จัดเก็บต่าง ๆ ได้อีกด้วย
ซึ่งเป็นงานในส่วนของ Data Collection
ยกตัวอย่างเช่น Jaeger, Zipkin, Prometheus และ Fluent Bit เป็นต้น
แน่นอนว่า อาจจะเป็นระบบอื่น ๆ ก็ได้ ซึ่งไม่ผูกมัดแน่นอน
โครงสร้างของการทำงานดังรูป
มีตัวอย่างของการจัดเก็บข้อมูลให้ด้วย
ยกตัวอย่างเช่น การพัฒนาด้วยภาษา Go
- Jaeger
- Prometheus
- Zipkin
เดี๋ยวมาเขียน code เพื่อสร้างและจัดเก็บข้อมูล Metric ใน service ด้วยภาษา Go กันต่อไป