1use lazy_static::lazy_static;
16use prometheus::*;
17
18pub const REGION_REQUEST_TYPE: &str = "datanode_region_request_type";
20
21pub const REGION_ROLE: &str = "region_role";
22pub const REGION_ID: &str = "region_id";
23pub const RESULT_TYPE: &str = "result";
24
25lazy_static! {
26 pub static ref HANDLE_REGION_REQUEST_ELAPSED: HistogramVec = register_histogram_vec!(
28 "greptime_datanode_handle_region_request_elapsed",
29 "datanode handle region request elapsed",
30 &[REGION_ID, REGION_REQUEST_TYPE]
31 )
32 .unwrap();
33 pub static ref REGION_CHANGED_ROW_COUNT: IntCounterVec = register_int_counter_vec!(
35 "greptime_datanode_region_changed_row_count",
36 "datanode region changed row count",
37 &[REGION_ID, REGION_REQUEST_TYPE]
38 )
39 .unwrap();
40 pub static ref LAST_RECEIVED_HEARTBEAT_ELAPSED: IntGauge = register_int_gauge!(
42 "greptime_last_received_heartbeat_lease_elapsed",
43 "last received heartbeat lease elapsed",
44 )
45 .unwrap();
46 pub static ref LAST_SENT_HEARTBEAT_ELAPSED: IntGauge = register_int_gauge!(
48 "greptime_last_sent_heartbeat_lease_elapsed",
49 "last sent heartbeat lease elapsed",
50 )
51 .unwrap();
52 pub static ref LEASE_EXPIRED_REGION: IntGaugeVec = register_int_gauge_vec!(
53 "greptime_lease_expired_region",
54 "lease expired region",
55 &[REGION_ID]
56 )
57 .unwrap();
58 pub static ref HEARTBEAT_REGION_LEASES: IntGaugeVec = register_int_gauge_vec!(
60 "greptime_heartbeat_region_leases",
61 "received region leases via heartbeat",
62 &[REGION_ROLE]
63 )
64 .unwrap();
65 pub static ref HEARTBEAT_SENT_COUNT: IntCounter = register_int_counter!(
67 "greptime_datanode_heartbeat_send_count",
68 "datanode heartbeat sent",
69 )
70 .unwrap();
71 pub static ref HEARTBEAT_RECV_COUNT: IntCounterVec = register_int_counter_vec!(
73 "greptime_datanode_heartbeat_recv_count",
74 "datanode heartbeat received",
75 &[RESULT_TYPE]
76 )
77 .unwrap();
78}