Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Ruby

วิธีใช้เมตริกที่กำหนดเอง

ข้อมูลเชิงลึกที่ลึกซึ้งยิ่งขึ้นด้วยเมตริกที่กำหนดเอง

ด้วย AppSignal gem คุณสามารถใช้เครื่องมือแบบกำหนดเองเพื่อรับรายละเอียดเพิ่มเติมเกี่ยวกับประสิทธิภาพของแอปพลิเคชันของคุณได้ แต่บางครั้งคุณต้องการติดตามเมตริกอื่นๆ ด้วย

ด้วย 1.0 การเปิดตัวอัญมณีของเรา คุณสามารถส่งเมตริกที่กำหนดเองไปยัง AppSignal ได้ ตัวชี้วัดเหล่านี้ช่วยให้คุณติดตามทุกอย่างในแอปพลิเคชันของคุณ ตั้งแต่บัญชีใหม่ไปจนถึงการใช้ดิสก์ฐานข้อมูล สิ่งเหล่านี้ไม่ใช่การแทนที่เครื่องมือโค้ด แต่เป็นวิธีเพิ่มเติมในการทำให้ข้อมูลบางอย่างในโค้ดของคุณเข้าถึงและวัดผลได้มากขึ้นเมื่อเวลาผ่านไป

เรามีเมตริกสามประเภท:

เกจ หมายเลขที่คุณเขียนทับได้มีประโยชน์ในการจัดเก็บสิ่งต่างๆ เช่น จำนวนผู้ใช้
เคาน์เตอร์ ตัวเลขที่สามารถเพิ่มได้ด้วยค่าที่กำหนด ซึ่งมีประโยชน์ในการนับเวลาที่กระบวนการทำงาน เป็นต้น
จำหน่าย ชุดของตัวเลขที่เราเก็บค่าเฉลี่ยและจำนวน มีประโยชน์ในการติดตามยอดขายเฉลี่ย

AppSignal gem มีวิธีการสำหรับตัวชี้วัดแต่ละประเภทเหล่านี้ คุณสามารถใช้วิธีการเหล่านี้ในการส่งข้อมูลไปยังระบบของเราได้

เกจ

เกจเหมาะสำหรับเมตริกที่สามารถเพิ่มและลดได้ เราใช้มาตรวัดใน AppSignal เพื่อสร้างกราฟจำนวนบัญชีที่ใช้งานอยู่

count = Account.active.count
Appsignal.set_gauge('account_count', count)

เคาน์เตอร์

ตามชื่อเลย ตัวนับเป็นวิธีที่ยอดเยี่ยมในการติดตามจำนวนครั้งที่มีอะไรเกิดขึ้น พนักงานของเราประมวลผลเพย์โหลดที่มีจุดข้อมูลหลายจุด ซึ่งหมายความว่าจำนวนงานไม่ได้แสดงถึงปริมาณข้อมูลที่เราดำเนินการอย่างถูกต้อง ด้วยตัวนับ เราเพิ่มขึ้นสำหรับแต่ละจุดข้อมูลที่เราประมวลผล

minute.metrics.each do |metric|
  Appsignal.increment_counter('metric_count', metric.length)
end

การกระจายสินค้า

เราใช้การแจกแจงเพื่อวัดเวลาเฉลี่ยที่โค้ดใช้ในการดำเนินการ ตัวอย่างเช่น งานสามารถเรียกใช้งานแผนที่/ลดงานได้หลายรายการ และแม้ว่าเราจะติดตามระยะเวลาด้วยเครื่องมือวัด เรายังต้องการดูระยะเวลาเฉลี่ยสำหรับแต่ละงานใน กราฟสวยครับ

Appsignal.add_distribution_value('mapreduce_duration', MapReduce::Minutely.new.run.time)

เปลี่ยนเมตริกให้เป็นกราฟ

การส่งตัววัดไปยัง AppSignal เป็นเพียงครึ่งหนึ่งของเรื่องราว หลังจากส่งข้อมูลแล้ว เราจำเป็นต้องสร้างกราฟเพื่อแสดงตัววัด เราทำสิ่งนี้ในตัวแก้ไขในหน้า "เมตริกที่กำหนดเอง"

ฟีเจอร์เมตริกที่กำหนดเองของเราช่วยให้คุณสร้างหลายหน้าจอพร้อมกราฟได้ คุณสามารถกำหนดหน้าจอและกราฟบนหน้าจอเหล่านี้ได้ผ่านรูปแบบ YAML

ตัวอย่างเช่น การสร้างหน้าจอด้วยกราฟการปล่อยบัญชี การแสดงกราฟที่มีจำนวนบัญชี คุณสามารถใช้ YAML ต่อไปนี้ได้:

- title: Account overview
  graphs:
    - title: "Number of accounts"
      kind: gauge
      format: number
      fields:
        - account_count

ซึ่งจะส่งผลในหน้าต่อไปนี้:

แทนที่จะระบุรายการที่มีฟิลด์ คุณยังสามารถระบุ regex ที่ตรงกับชื่อเมตริกตั้งแต่หนึ่งชื่อขึ้นไป ตัวอย่างด้านล่างแสดงกราฟที่มีเส้นสำหรับโค้ดตอบกลับ API แต่ละรายการสำหรับ API บุคคลที่สาม

- title: API Responses
  graphs:
    - title: "API response codes"
      kind: count
      filter: "api_response_code_[0-9]+"
      format: number

นี่เป็นเพียงเมตริกที่มีประโยชน์บางส่วนที่คุณสามารถติดตามด้วย AppSignal ได้แล้ว สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเมตริกที่กำหนดเอง โปรดดูเอกสารประกอบหรือติดต่อเราหากต้องการความช่วยเหลือในการตั้งค่าสำหรับบัญชีของคุณ