summaryrefslogtreecommitdiffstats
path: root/applications/luci-app-statistics/htdocs/luci-static/resources/statistics/rrdtool/definitions/interface.js
blob: ebdefeccc92b161eda680a323b16b93c00c66002 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
/* Licensed to the public under the Apache License 2.0. */

'use strict';
'require baseclass';

return baseclass.extend({
	title: _('Interfaces'),

	rrdargs(graph, host, plugin, plugin_instance, dtype) {
		/*
		 * traffic diagram
		 */
		const traffic = {

			/* draw this diagram for each plugin instance */
			per_instance: true,
			title: "%H: Transfer on %pi",
			vlabel: "Bytes/s",

			/* diagram data description */
			data: {
				/* defined sources for data types, if omitted assume a single DS named "value" (optional) */
				sources: {
					if_octets: [ "tx", "rx" ]
				},

				/* special options for single data lines */
				options: {
					if_octets__tx: {
						total: true,		/* report total amount of bytes */
						color: "00ff00",	/* tx is green */
						title: "Bytes (TX)"
					},

					if_octets__rx: {
						flip : true,		/* flip rx line */
						total: true,		/* report total amount of bytes */
						color: "0000ff",	/* rx is blue */
						title: "Bytes (RX)"
					}
				}
			}
		};

		/*
		 * packet diagram
		 */
		const packets = {

			/* draw this diagram for each plugin instance */
			per_instance: true,
			title: "%H: Packets on %pi",
			vlabel: "Packets/s",

			/* diagram data description */
			data: {
				/* data type order */
				types: [ "if_packets", "if_errors" ],

				/* defined sources for data types */
				sources: {
					if_packets: [ "tx", "rx" ],
					if_errors : [ "tx", "rx" ]
				},

				/* special options for single data lines */
				options: {
					/* processed packets (tx DS) */
					if_packets__tx: {
						weight : 1,
						overlay: true,		/* don't summarize */
						total  : true,		/* report total amount of bytes */
						color  : "00ff00",	/* processed tx is green */
						title  : "Processed (TX)"
					},

					/* processed packets (rx DS) */
					if_packets__rx: {
						weight : 2,
						overlay: true,		/* don't summarize */
						flip   : true,		/* flip rx line */
						total  : true,		/* report total amount of bytes */
						color  : "0000ff",	/* processed rx is blue */
						title  : "Processed (RX)"
					},

					/* packet errors (tx DS) */
					if_errors__tx: {
						weight : 0,
						overlay: true,		/* don't summarize */
						total  : true,		/* report total amount of packets */
						color  : "ff5500",	/* tx errors are orange */
						title  : "Errors    (TX)"
					},

					/* packet errors (rx DS) */
					if_errors__rx: {
						weight : 3,
						overlay: true,		/* don't summarize */
						flip   : true,		/* flip rx line */
						total  : true,		/* report total amount of packets */
						color  : "ff0000",	/* rx errors are red */
						title  : "Errors    (RX)"
					}
				}
			}
		};

		return [ traffic, packets ];
	}
});