@@ -10,64 +10,7 @@ defmodule NervesHub.StatsdMetricsReporter do
1010 host: statsd_config [ :host ] ,
1111 port: statsd_config [ :port ] ,
1212 formatter: :datadog ,
13- metrics: [
14- # NervesHub
15- counter ( "nerves_hub.devices.connect.count" , tags: [ :env , :service ] ) ,
16- counter ( "nerves_hub.devices.disconnect.count" , tags: [ :env , :service ] ) ,
17- counter ( "nerves_hub.devices.duplicate_connection" , tags: [ :env , :service ] ) ,
18- counter ( "nerves_hub.devices.stale_connections" , tags: [ :env , :service ] ) ,
19- counter ( "nerves_hub.devices.update.manual.count" , tags: [ :env , :service ] ) ,
20- counter ( "nerves_hub.devices.update.automatic.count" , tags: [ :env , :service ] ) ,
21- counter ( "nerves_hub.devices.deployment.penalty_box.check.count" ,
22- tags: [ :env , :service ]
23- ) ,
24- counter ( "nerves_hub.deployments.trigger_update.count" , tags: [ :env , :service ] ) ,
25- counter ( "nerves_hub.deployments.trigger_update.device.count" , tags: [ :env , :service ] ) ,
26- counter ( "nerves_hub.devices.jitp.created.count" , tags: [ :env , :service ] ) ,
27- counter ( "nerves_hub.device_certificates.created.count" , tags: [ :env , :service ] ) ,
28- last_value ( "nerves_hub.devices.online.count" , tags: [ :env , :service , :node ] ) ,
29- counter ( "nerves_hub.rate_limit.accepted.count" , tags: [ :env , :service ] ) ,
30- counter ( "nerves_hub.rate_limit.pruned.count" , tags: [ :env , :service ] ) ,
31- counter ( "nerves_hub.rate_limit.rejected.count" , tags: [ :env , :service ] ) ,
32- counter ( "nerves_hub.ssl.fail.count" , tags: [ :env , :service ] ) ,
33- counter ( "nerves_hub.ssl.success.count" , tags: [ :env , :service ] ) ,
34- counter ( "nerves_hub.tracker.exception.count" , tags: [ :env , :service ] ) ,
35- # General
36- counter ( "phoenix.endpoint.start.count" , tags: [ :env , :service ] ) ,
37- summary ( "phoenix.endpoint.stop.duration" ,
38- tags: [ :env , :service ] ,
39- unit: { :native , :millisecond }
40- ) ,
41- summary ( "phoenix.router_dispatch.stop.duration" ,
42- tags: [ :route , :env , :service ] ,
43- unit: { :native , :millisecond }
44- ) ,
45- counter ( "nerves_hub.repo.query.count" , tags: [ :env , :service ] ) ,
46- distribution ( "nerves_hub.repo.query.idle_time" ,
47- tags: [ :env , :service ] ,
48- unit: { :native , :millisecond }
49- ) ,
50- distribution ( "nerves_hub.repo.query.queue_time" ,
51- tags: [ :env , :service ] ,
52- unit: { :native , :millisecond }
53- ) ,
54- distribution ( "nerves_hub.repo.query.query_time" ,
55- tags: [ :env , :service ] ,
56- unit: { :native , :millisecond }
57- ) ,
58- distribution ( "nerves_hub.repo.query.decode_time" ,
59- tags: [ :env , :service ] ,
60- unit: { :native , :millisecond }
61- ) ,
62- distribution ( "nerves_hub.repo.query.total_time" ,
63- tags: [ :env , :service ] ,
64- unit: { :native , :millisecond }
65- ) ,
66- summary ( "vm.memory.total" , tags: [ :env , :service ] , unit: { :byte , :kilobyte } ) ,
67- summary ( "vm.total_run_queue_lengths.total" , tags: [ :env , :service ] ) ,
68- summary ( "vm.total_run_queue_lengths.cpu" , tags: [ :env , :service ] ) ,
69- summary ( "vm.total_run_queue_lengths.io" , tags: [ :env , :service ] )
70- ] ,
13+ metrics: metrics ( ) ,
7114 global_tags: [
7215 env: Application . get_env ( :nerves_hub , :deploy_env ) ,
7316 dyno: Application . get_env ( :nerves_hub , :app ) ,
@@ -78,4 +21,65 @@ defmodule NervesHub.StatsdMetricsReporter do
7821 [ ]
7922 end
8023 end
24+
25+ def metrics ( ) do
26+ [
27+ # NervesHub
28+ counter ( "nerves_hub.devices.connect.count" , tags: [ :env , :service ] ) ,
29+ counter ( "nerves_hub.devices.disconnect.count" , tags: [ :env , :service ] ) ,
30+ counter ( "nerves_hub.devices.duplicate_connection" , tags: [ :env , :service ] ) ,
31+ counter ( "nerves_hub.devices.stale_connections" , tags: [ :env , :service ] ) ,
32+ counter ( "nerves_hub.devices.update.manual.count" , tags: [ :env , :service ] ) ,
33+ counter ( "nerves_hub.devices.update.automatic.count" , tags: [ :env , :service ] ) ,
34+ counter ( "nerves_hub.devices.deployment.penalty_box.check.count" ,
35+ tags: [ :env , :service ]
36+ ) ,
37+ counter ( "nerves_hub.deployments.trigger_update.count" , tags: [ :env , :service ] ) ,
38+ counter ( "nerves_hub.deployments.trigger_update.device.count" , tags: [ :env , :service ] ) ,
39+ counter ( "nerves_hub.devices.jitp.created.count" , tags: [ :env , :service ] ) ,
40+ counter ( "nerves_hub.device_certificates.created.count" , tags: [ :env , :service ] ) ,
41+ last_value ( "nerves_hub.devices.online.count" , tags: [ :env , :service , :node ] ) ,
42+ counter ( "nerves_hub.rate_limit.accepted.count" , tags: [ :env , :service ] ) ,
43+ counter ( "nerves_hub.rate_limit.pruned.count" , tags: [ :env , :service ] ) ,
44+ counter ( "nerves_hub.rate_limit.rejected.count" , tags: [ :env , :service ] ) ,
45+ counter ( "nerves_hub.ssl.fail.count" , tags: [ :env , :service ] ) ,
46+ counter ( "nerves_hub.ssl.success.count" , tags: [ :env , :service ] ) ,
47+ counter ( "nerves_hub.tracker.exception.count" , tags: [ :env , :service ] ) ,
48+ # General
49+ counter ( "phoenix.endpoint.start.count" , tags: [ :env , :service ] ) ,
50+ summary ( "phoenix.endpoint.stop.duration" ,
51+ tags: [ :env , :service ] ,
52+ unit: { :native , :millisecond }
53+ ) ,
54+ summary ( "phoenix.router_dispatch.stop.duration" ,
55+ tags: [ :route , :env , :service ] ,
56+ unit: { :native , :millisecond }
57+ ) ,
58+ counter ( "nerves_hub.repo.query.count" , tags: [ :env , :service ] ) ,
59+ distribution ( "nerves_hub.repo.query.idle_time" ,
60+ tags: [ :env , :service ] ,
61+ unit: { :native , :millisecond }
62+ ) ,
63+ distribution ( "nerves_hub.repo.query.queue_time" ,
64+ tags: [ :env , :service ] ,
65+ unit: { :native , :millisecond }
66+ ) ,
67+ distribution ( "nerves_hub.repo.query.query_time" ,
68+ tags: [ :env , :service ] ,
69+ unit: { :native , :millisecond }
70+ ) ,
71+ distribution ( "nerves_hub.repo.query.decode_time" ,
72+ tags: [ :env , :service ] ,
73+ unit: { :native , :millisecond }
74+ ) ,
75+ distribution ( "nerves_hub.repo.query.total_time" ,
76+ tags: [ :env , :service ] ,
77+ unit: { :native , :millisecond }
78+ ) ,
79+ summary ( "vm.memory.total" , tags: [ :env , :service ] , unit: { :byte , :kilobyte } ) ,
80+ summary ( "vm.total_run_queue_lengths.total" , tags: [ :env , :service ] ) ,
81+ summary ( "vm.total_run_queue_lengths.cpu" , tags: [ :env , :service ] ) ,
82+ summary ( "vm.total_run_queue_lengths.io" , tags: [ :env , :service ] )
83+ ]
84+ end
8185end
0 commit comments