master
go 62 lines 1.45 KB
Raw
1 // SPDX-License-Identifier: GPL-3.0-or-later
2
3 package openvpn
4
5 import "github.com/netdata/netdata/go/plugins/plugin/framework/collectorapi"
6
7 type (
8 // Charts is an alias for collectorapi.Charts
9 Charts = collectorapi.Charts
10 // Dims is an alias for collectorapi.Dims
11 Dims = collectorapi.Dims
12 )
13
14 var charts = Charts{
15 {
16 ID: "active_clients",
17 Title: "Total Number Of Active Clients",
18 Units: "clients",
19 Fam: "clients",
20 Ctx: "openvpn.active_clients",
21 Dims: Dims{
22 {ID: "clients"},
23 },
24 },
25 {
26 ID: "total_traffic",
27 Title: "Total Traffic",
28 Units: "kilobits/s",
29 Fam: "traffic",
30 Ctx: "openvpn.total_traffic",
31 Type: collectorapi.Area,
32 Dims: Dims{
33 {ID: "bytes_in", Name: "in", Algo: collectorapi.Incremental, Mul: 8, Div: 1000},
34 {ID: "bytes_out", Name: "out", Algo: collectorapi.Incremental, Mul: 8, Div: -1000},
35 },
36 },
37 }
38
39 var userCharts = Charts{
40 {
41 ID: "%s_user_traffic",
42 Title: "User Traffic",
43 Units: "kilobits/s",
44 Fam: "user %s",
45 Ctx: "openvpn.user_traffic",
46 Type: collectorapi.Area,
47 Dims: Dims{
48 {ID: "%s_bytes_received", Name: "received", Algo: collectorapi.Incremental, Mul: 8, Div: 1000},
49 {ID: "%s_bytes_sent", Name: "sent", Algo: collectorapi.Incremental, Mul: 8, Div: -1000},
50 },
51 },
52 {
53 ID: "%s_user_connection_time",
54 Title: "User Connection Time",
55 Units: "seconds",
56 Fam: "user %s",
57 Ctx: "openvpn.user_connection_time",
58 Dims: Dims{
59 {ID: "%s_connection_time", Name: "time"},
60 },
61 },
62 }