Quantcast
Channel: cc :: somkiat
Viewing all articles
Browse latest Browse all 1997

Dashboard as a Code ด้วย Grafonnet

$
0
0

ในการสร้าง Dashboard ใน Grafana นั้นต้องสร้างในรูปแบบของ JSON
ซึ่งมีตัวอย่าง และ community ให้เยอะมาก ๆ
แต่ปัญหาคือ การสร้าง ทดสอบ และดูแลไม่ง่ายเลย

จัดการ version ของ dashboard น่าจะอยู่ใน version control ด้วย
ควรต้องมีการ review code ของการสร้าง dashboard
สามารถ integrate กับระบบ CI/CDได้ง่าย
สามารถ reuse ในรูปแบบ component ได้

https://grafana.com/blog/2020/02/26/how-to-configure-grafana-as-code/

แนวทางแก้ไขปัญหาของ Grafana dashboard ที่น่าสนใจคือ

Dashboard as a Code ด้วย Grafonnet
ซึ่งใช้งานร่วมกับ

  • jsonnet คือ JSON template language
  • grafonnet คือ Grafana jsonnet library

ทำการติดตั้งตามเอกสาร
จากนั้นทำการสร้าง project ของ dashboard ดังนี้

ขั้นตอนที่ 1 สร้าง project

[gist id="440da29b8e2dc31c3611398a9d02d61f" file="1.txt"]

ขั้นตอนที่ 2 สร้างไฟล์ run.sh สำหรับส่งไฟล์ JSON ของ dashboard ไปยัง Grafana server

[gist id="440da29b8e2dc31c3611398a9d02d61f" file="run.sh"]

ขั้นตอนที่ 3 ทำการสร้างไฟล์ JSON จาก grafannet

[gist id="440da29b8e2dc31c3611398a9d02d61f" file="2.txt"]

จากนั้นไปดูผลการทำงานที่ Grafana server
จะเจอ Dashboard ที่เราสร้างขึ้นมา ดังรูป

น่าจะสนกับ Dashboard as a Code มาก ๆ


Viewing all articles
Browse latest Browse all 1997

Trending Articles