master
go 93 lines 2.04 KB
Raw
1 // SPDX-License-Identifier: GPL-3.0-or-later
2
3 package puppet
4
5 import (
6 "github.com/netdata/netdata/go/plugins/plugin/framework/collectorapi"
7 )
8
9 const (
10 prioJVMHeap = collectorapi.Priority + iota
11 prioJVMNonHeap
12 prioCPUUsage
13 prioFileDescriptors
14 )
15
16 const (
17 byteToMiB = 1 << 20
18 )
19
20 var charts = collectorapi.Charts{
21 jvmHeapChart.Copy(),
22 jvmNonHeapChart.Copy(),
23 cpuUsageChart.Copy(),
24 fileDescriptorsChart.Copy(),
25 }
26
27 var (
28 jvmHeapChart = collectorapi.Chart{
29 ID: "jvm_heap",
30 Title: "JVM Heap",
31 Units: "MiB",
32 Fam: "resources",
33 Ctx: "puppet.jvm_heap",
34 Type: collectorapi.Area,
35 Priority: prioJVMHeap,
36 Dims: collectorapi.Dims{
37 {ID: "jvm_heap_committed", Name: "committed", Div: byteToMiB},
38 {ID: "jvm_heap_used", Name: "used", Div: byteToMiB},
39 },
40 Vars: collectorapi.Vars{
41 {ID: "jvm_heap_max"},
42 {ID: "jvm_heap_init"},
43 },
44 }
45
46 jvmNonHeapChart = collectorapi.Chart{
47 ID: "jvm_nonheap",
48 Title: "JVM Non-Heap",
49 Units: "MiB",
50 Fam: "resources",
51 Ctx: "puppet.jvm_nonheap",
52 Type: collectorapi.Area,
53 Priority: prioJVMNonHeap,
54 Dims: collectorapi.Dims{
55 {ID: "jvm_nonheap_committed", Name: "committed", Div: byteToMiB},
56 {ID: "jvm_nonheap_used", Name: "used", Div: byteToMiB},
57 },
58 Vars: collectorapi.Vars{
59 {ID: "jvm_nonheap_max"},
60 {ID: "jvm_nonheap_init"},
61 },
62 }
63
64 cpuUsageChart = collectorapi.Chart{
65 ID: "cpu",
66 Title: "CPU usage",
67 Units: "percentage",
68 Fam: "resources",
69 Ctx: "puppet.cpu",
70 Type: collectorapi.Stacked,
71 Priority: prioCPUUsage,
72 Dims: collectorapi.Dims{
73 {ID: "cpu_usage", Name: "execution", Div: 1000},
74 {ID: "gc_cpu_usage", Name: "GC", Div: 1000},
75 },
76 }
77
78 fileDescriptorsChart = collectorapi.Chart{
79 ID: "fd_open",
80 Title: "File Descriptors",
81 Units: "descriptors",
82 Fam: "resources",
83 Ctx: "puppet.fdopen",
84 Type: collectorapi.Line,
85 Priority: prioFileDescriptors,
86 Dims: collectorapi.Dims{
87 {ID: "fd_used", Name: "used"},
88 },
89 Vars: collectorapi.Vars{
90 {ID: "fd_max"},
91 },
92 }
93 )