a45c43af445e7a1b7b03a405e6e6b70ab3171495
[openwrt-luci.git] /
1 /* Licensed to the public under the Apache License 2.0. */
2
3 'use strict';
4 'require baseclass';
5
6 return baseclass.extend({
7         title: _('SQM-Cake'),
8
9         rrdargs: function(graph, host, plugin, plugin_instance, dtype) {
10                 var tindrops = {
11                         per_instance: true,
12                         title: "%H: CAKE %pi %di Drops/s & Backlog",
13                         vlabel: "Bytes & Drops/s",
14                         rrdopts: [ "--logarithmic" ],
15                         number_format: "%5.0lf",
16                         data: {
17                                 types: [ "qdisct_backlog", "qdisct_drops" ],
18                                 sources: { qdisct_drops: [ "ack", "drops", "ecn" ] },
19                                 options: {
20                                         qdisct_backlog: { title: "Backlog:", overlay: true, color: "0000ff" },
21                                         qdisct_drops__ack: { title: "Ack:", overlay: true, noarea: true, color: "ff00ff" },
22                                         qdisct_drops__drops: { title: "Drops:", overlay: true, noarea: true, color: "00ffff" },
23                                         qdisct_drops__ecn: { title: "Ecn:", overlay: true, noarea: true, color: "00ff00" }
24                                 }
25                         }
26                 };
27
28                 var tinlatency = {
29                         per_instance: true,
30                         title: "%H: CAKE %pi %di Latency",
31                         vlabel: "ms",
32                         number_format: "%4.3lf",
33                         data: {
34                                 types: [ "qdisct_latencyus" ],
35                                 sources: { qdisct_latencyus: [ "tg", "pk", "av", "sp" ] },
36                                 options: {
37                                         qdisct_latencyus__tg: { title: "Target:", overlay: true, noarea: true, color: "000000", transform_rpn: "1000,/" },
38                                         qdisct_latencyus__pk: { title: "Peak:", overlay: true, noarea: true, color: "ff0000", transform_rpn: "1000,/" },
39                                         qdisct_latencyus__av: { title: "Avg:", overlay: true, noarea: true, color: "00ff00", transform_rpn: "1000,/" },
40                                         qdisct_latencyus__sp: { title: "Sparse:", overlay: true, noarea: true, color: "0000ff", transform_rpn: "1000,/" }
41                                 }
42                         }
43                 };
44
45                 var tinflows = {
46                         per_instance: true,
47                         title: "%H: CAKE %pi %di Flow Counts",
48                         vlabel: "Flows",
49                         number_format: "%4.0lf",
50                         data: {
51                                 types: [ "qdisct_flows" ],
52                                 sources: { qdisct_flows: [ "sp", "bu", "un" ] },
53                                 options: {
54                                         qdisct_flows__sp: { title: "Sparse:", overlay: true, noarea: true, color: "00ff00" },
55                                         qdisct_flows__bu: { title: "Bulk:", overlay: true, noarea: true, color: "0000ff" },
56                                         qdisct_flows__un: { title: "Unresponsive:", overlay: true, noarea: true, color: "ff0000" }
57                                 }
58                         }
59                 };
60
61                 var tinbytes = {
62                         per_instance: true,
63                         title: "%H: CAKE %pi %di Traffic",
64                         vlabel: "Kb/s",
65                         number_format: "%5.0lf",
66                         rrdopts: [ "--logarithmic" ],
67                         data: {
68                                 types: [ "qdisct_bytes", "qdisct_thres" ],
69                                 options: {
70                                         qdisct_bytes: { title: "Kb/s:", noarea: false, color: "0000ff", transform_rpn: "125,/" },
71                                         qdisct_thres: { title: "Thres:", overlay: true, noarea: true, color: "000000", transform_rpn: "125,/" }
72                                 }
73                         }
74                 };
75
76                 return [ tinbytes, tinlatency, tindrops, tinflows ];
77         }
78 });
git clone https://git.99rst.org/PROJECT