960d98c1086c62527533e987625b9670b6c80109
[openwrt-luci.git] /
1 /*
2  * Copyright  2011 Manuel Munz <freifunk at somakoma dot de>
3  * Licensed to the public under the Apache License 2.0.
4  */
5
6 'use strict';
7 'require baseclass';
8 'require uci';
9
10 return baseclass.extend({
11         title: _('Memory'),
12
13         rrdargs: function(graph, host, plugin, plugin_instance, dtype) {
14                 var p = [];
15                 var hide_free = uci.get("luci_statistics", "collectd_memory", "HideFree") == "1" ? true : false;
16
17                 var memory = {
18                         title: "%H: Memory usage",
19                         vlabel: "MB",
20                         number_format: "%5.1lf%s",
21                         y_min: "0",
22                         alt_autoscale_max: true,
23                         data: {
24                                 instances: {
25                                         memory: [
26                                                 ...(hide_free ? [] : ["free"]),
27                                                 "buffered",
28                                                 "cached",
29                                                 "used"
30                                         ]
31                                 },
32
33                                 options: {
34                                         memory_buffered: {
35                                                 color: "0000ff",
36                                                 title: "Buffered"
37                                         },
38                                         memory_cached: {
39                                                 color: "ff00ff",
40                                                 title: "Cached"
41                                         },
42                                         memory_used: {
43                                                 color: "ff0000",
44                                                 title: "Used"
45                                         },
46                                         memory_free: {
47                                                 color: "00ff00",
48                                                 title: "Free"
49                                         }
50                                 }
51                         }
52                 };
53
54                 var percent = {
55                         title: "%H: Memory usage",
56                         vlabel: "Percent",
57                         number_format: "%5.1lf%%",
58                         y_min: "0",
59                         alt_autoscale_max: true,
60                         data: {
61                                 instances: {
62                                         percent: [
63                                                 ...(hide_free ? [] : ["free"]),
64                                                 "buffered",
65                                                 "cached",
66                                                 "used"
67                                         ]
68                                 },
69                                 options: {
70                                         percent_buffered: {
71                                                 color: "0000ff",
72                                                 title: "Buffered"
73                                         },
74                                         percent_cached: {
75                                                 color: "ff00ff",
76                                                 title: "Cached"
77                                         },
78                                         percent_used: {
79                                                 color: "ff0000",
80                                                 title: "Used"
81                                         },
82                                         percent_free: {
83                                                 color: "00ff00",
84                                                 title: "Free"
85                                         }
86                                 }
87                         }
88                 };
89
90                 var types = graph.dataTypes(host, plugin, plugin_instance);
91
92                 for (var i = 0; i < types.length; i++)
93                         if (types[i] == 'percent')
94                                 p.push(percent);
95                         else if (types[i] == 'memory')
96                                 p.push(memory);
97
98                 return p;
99         }
100 });
git clone https://git.99rst.org/PROJECT