cloudscale 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE.txt +22 -0
- data/README.md +33 -0
- data/bin/autospec +16 -0
- data/bin/bundler +16 -0
- data/bin/htmldiff +16 -0
- data/bin/ldiff +16 -0
- data/bin/monitor +16 -0
- data/bin/rake +16 -0
- data/bin/rspec +16 -0
- data/lib/cloudscale.rb +127 -0
- data/lib/cloudscale/monitor/agent/init.rb +63 -0
- data/lib/cloudscale/monitor/agent/init_charts.rb +60 -0
- data/lib/cloudscale/monitor/agent/init_menus.rb +44 -0
- data/lib/cloudscale/monitor/agent/preops/general_preop.rb +34 -0
- data/lib/cloudscale/monitor/agent/preops/preop.rb +72 -0
- data/lib/cloudscale/monitor/model/agent/agent_instance.rb +33 -0
- data/lib/cloudscale/monitor/model/agent/agent_instance_settings.rb +26 -0
- data/lib/cloudscale/monitor/model/constants/agent_instance_store.rb +42 -0
- data/lib/cloudscale/monitor/model/constants/agent_store.rb +23 -0
- data/lib/cloudscale/monitor/model/constants/influxdb_store.rb +23 -0
- data/lib/cloudscale/monitor/model/influxdb/influxdata.rb +28 -0
- data/lib/cloudscale/monitor/reporter/influxdb_reporter.rb +188 -0
- data/lib/cloudscale/plugins/mongo/data/os_chart.json +362 -0
- data/lib/cloudscale/plugins/mongo/data/os_menu.json +17 -0
- data/lib/cloudscale/plugins/mongo/mongo_db_status.rb +57 -0
- data/lib/cloudscale/plugins/mongo/mongo_replica_status.rb +103 -0
- data/lib/cloudscale/plugins/mongo/mongo_server_status.rb +172 -0
- data/lib/cloudscale/plugins/os/data/os_chart.json +362 -0
- data/lib/cloudscale/plugins/os/data/os_menu.json +17 -0
- data/lib/cloudscale/plugins/os/preops/plugin_preop.rb +56 -0
- data/lib/cloudscale/plugins/os/sigar_cpu_perc.rb +54 -0
- data/lib/cloudscale/plugins/os/sigar_disk_iops.rb +55 -0
- data/lib/cloudscale/plugins/os/sigar_disk_space.rb +54 -0
- data/lib/cloudscale/plugins/os/sigar_net_byte_information.rb +53 -0
- data/lib/cloudscale/plugins/os/sigar_packet_information.rb +63 -0
- data/lib/cloudscale/plugins/os/sigar_ram_usage.rb +46 -0
- data/lib/cloudscale/plugins/os/sigar_swap_usage.rb +46 -0
- data/lib/cloudscale/plugins/plugin.rb +98 -0
- data/lib/cloudscale/plugins/postgres/postgres_server_status.rb +143 -0
- data/lib/cloudscale/plugins/preops/plugin_mongodb_preop.rb +105 -0
- data/lib/cloudscale/plugins/preops/plugin_postgres_preop.rb +70 -0
- data/lib/cloudscale/registry.rb +48 -0
- data/lib/cloudscale/rest/rest_client.rb +198 -0
- data/lib/cloudscale/rest/rest_client_helper.rb +70 -0
- data/lib/cloudscale/schedule.rb +32 -0
- data/lib/cloudscale/store/agent/agent.store +7 -0
- data/lib/cloudscale/store/agent/agent_instance.store +11 -0
- data/lib/cloudscale/store/agent/influxdb.store +6 -0
- data/lib/cloudscale/store/plugin/token +1 -0
- data/lib/cloudscale/version.rb +8 -0
- data/lib/test/rest/rest_client_test.rb +50 -0
- data/lib/test/sigar/sigar_test.rb +36 -0
- metadata +264 -0
@@ -0,0 +1,172 @@
|
|
1
|
+
#require "#{File.dirname(__FILE__)}/../preops/plugin_mongodb_preop"
|
2
|
+
require "#{File.dirname(__FILE__)}/../plugin"
|
3
|
+
|
4
|
+
##
|
5
|
+
#
|
6
|
+
# @author Johannes Hiemer.
|
7
|
+
#
|
8
|
+
##
|
9
|
+
module Cloudscale
|
10
|
+
module Plugins
|
11
|
+
class MongoServerStatus < Plugins::Plugin
|
12
|
+
|
13
|
+
attr_accessor :db
|
14
|
+
attr_reader :menu_generalInformation, :menu_idxCounter, :menu_globalLock, :menu_opCounter, :menu_memory, :menu_network,
|
15
|
+
:indexCountersBtreeHits, :indexCountersBtreeAccesses, :indexCountersBtreeMisses, :globalLockLockTime,
|
16
|
+
:globalLockTotalTime, :opcountersInsert, :opcountersQuery, :opcountersUpdate, :opcountersDelete, :opcountersGetMore,
|
17
|
+
:generalInformation, :memBits, :memResident, :memVirtual, :memMapped, :memMappedWithJournal,
|
18
|
+
:networkBytesIn, :networkBytesOut, :networkNumOfRequests
|
19
|
+
def log
|
20
|
+
@log = Logger.new(STDOUT)
|
21
|
+
end
|
22
|
+
|
23
|
+
def is_enabled
|
24
|
+
false
|
25
|
+
end
|
26
|
+
|
27
|
+
def initialize
|
28
|
+
super
|
29
|
+
if is_enabled
|
30
|
+
menus = Plugins::PluginMenus.load_hash()
|
31
|
+
@menu_generalInformation = load_menu(menus["mongodb-server-stats"], "generalInformation")
|
32
|
+
@menu_idxCounter = load_menu(menus["mongodb-server-stats"], "indexCounters")
|
33
|
+
@menu_globalLock = load_menu(menus["mongodb-server-stats"], "globalLock")
|
34
|
+
@menu_opCounter = load_menu(menus["mongodb-server-stats"], "opCounters")
|
35
|
+
@menu_memory = load_menu(menus["mongodb-server-stats"], "memory")
|
36
|
+
@menu_network = load_menu(menus["mongodb-server-stats"], "network")
|
37
|
+
|
38
|
+
@db = Plugins::PluginPreop.instance.db
|
39
|
+
components = Plugins::PluginComponents.load_hash()
|
40
|
+
@indexCountersBtreeHits = load_metric(components["mongodb-server-stats"], "indexCountersBtreeHits")
|
41
|
+
@indexCountersBtreeAccesses = load_metric(components["mongodb-server-stats"], "indexCountersBtreeAccesses")
|
42
|
+
@indexCountersBtreeMisses = load_metric(components["mongodb-server-stats"], "indexCountersBtreeMisses")
|
43
|
+
|
44
|
+
@globalLockLockTime = load_metric(components["mongodb-server-stats"], "globalLockLockTime")
|
45
|
+
@globalLockTotalTime = load_metric(components["mongodb-server-stats"], "globalLockTotalTime")
|
46
|
+
|
47
|
+
@opcountersInsert = load_metric(components["mongodb-server-stats"], "opcountersInsert")
|
48
|
+
@opcountersQuery = load_metric(components["mongodb-server-stats"], "opcountersQuery")
|
49
|
+
@opcountersUpdate = load_metric(components["mongodb-server-stats"], "opcountersUpdate")
|
50
|
+
@opcountersDelete = load_metric(components["mongodb-server-stats"], "opcountersDelete")
|
51
|
+
@opcountersGetMore = load_metric(components["mongodb-server-stats"], "opcountersGetMore")
|
52
|
+
|
53
|
+
@generalInformation = load_metric(components["mongodb-server-stats"], "generalInformation")
|
54
|
+
|
55
|
+
@memBits = load_metric(components["mongodb-server-stats"], "memBits")
|
56
|
+
@memResident = load_metric(components["mongodb-server-stats"], "memResident")
|
57
|
+
@memVirtual = load_metric(components["mongodb-server-stats"], "memVirtual")
|
58
|
+
@memMapped = load_metric(components["mongodb-server-stats"], "memMapped")
|
59
|
+
@memMappedWithJournal = load_metric(components["mongodb-server-stats"], "memMappedWithJournal")
|
60
|
+
|
61
|
+
@networkBytesIn = load_metric(components["mongodb-server-stats"], "networkBytesIn")
|
62
|
+
@networkBytesOut = load_metric(components["mongodb-server-stats"], "networkBytesOut")
|
63
|
+
@networkNumOfRequests = load_metric(components["mongodb-server-stats"], "networkNumOfRequests")
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
def collect(agentInstanceId)
|
68
|
+
log.info("Calling Collect on MongoServerStatus")
|
69
|
+
report_index_counters(agentInstanceId)
|
70
|
+
report_global_lock_times(agentInstanceId)
|
71
|
+
report_op_counters(agentInstanceId)
|
72
|
+
report_general_information(agentInstanceId)
|
73
|
+
report_memory(agentInstanceId)
|
74
|
+
report_network(agentInstanceId)
|
75
|
+
end
|
76
|
+
|
77
|
+
def report_memory(agentInstanceId)
|
78
|
+
stats = @db.command('serverStatus' => 1)
|
79
|
+
report(memBits, menu_memory, stats['mem']['bits'], false, agentInstanceId, "memBitsChart",
|
80
|
+
"Memory bits", "Memory bits across collections in the database", "area", "Time", "Count", "c", nil)
|
81
|
+
|
82
|
+
report(memResident, menu_memory, stats['mem']['resident'], false, agentInstanceId, "memResidentChart",
|
83
|
+
"Memory resident", "Memory resident across collections in the database", "area", "Time", "Count", "c", nil)
|
84
|
+
|
85
|
+
report(memVirtual, menu_memory, stats['mem']['virtual'], false, agentInstanceId, "memVirtualChart",
|
86
|
+
"Memory virtual", "Memory virtual across collections in the database", "area", "Time", "Count", "c", nil)
|
87
|
+
|
88
|
+
report(memMapped, menu_memory, stats['mem']['mapped'], false, agentInstanceId, "memMappedChart",
|
89
|
+
"Memory mapped", "Memory mapped across collections in the database", "area", "Time", "Count", "c", nil)
|
90
|
+
|
91
|
+
report(memMappedWithJournal, menu_memory, stats['mem']['mappedWithJournal'], false, agentInstanceId, "memMappedWithJournalChart",
|
92
|
+
"Memory mapped with Journal", "Memory mapped with Journal across collections in the database", "area", "Time", "Count", "c", nil)
|
93
|
+
|
94
|
+
end
|
95
|
+
|
96
|
+
def report_network(agentInstanceId)
|
97
|
+
stats = @db.command('serverStatus' => 1)
|
98
|
+
|
99
|
+
report(networkBytesIn, menu_network, stats['network']['bytesIn'], true, agentInstanceId, "networkBytesInChart",
|
100
|
+
"Network Bytes in", "Network Bytes in", "area", "Time", "Count", "B", "s")
|
101
|
+
|
102
|
+
report(networkBytesOut, menu_network, stats['network']['bytesOut'], true, agentInstanceId, "networkBytesOutChart",
|
103
|
+
"Network Bytes out", "Network Bytes out", "area", "Time", "Count", "B", "s")
|
104
|
+
|
105
|
+
report(networkNumOfRequests, menu_network, stats['network']['numRequests'], true, agentInstanceId, "networkNumOfRequests",
|
106
|
+
"Number of Requests", "Number of Requests", "area", "Time", "Count", "c", "s")
|
107
|
+
end
|
108
|
+
|
109
|
+
def report_general_information(agentInstanceId)
|
110
|
+
stats = @db.command('serverStatus' => 1)
|
111
|
+
|
112
|
+
body = Array.new
|
113
|
+
body.push(["Host", stats['host']])
|
114
|
+
body.push(["Version", stats['version']])
|
115
|
+
body.push(["Uptime", stats['uptime']])
|
116
|
+
body.push(["Local time", stats['localTime']])
|
117
|
+
body.push(["Connections currently", stats['connections']['current']])
|
118
|
+
body.push(["Connections available", stats['connections']['available']])
|
119
|
+
mongo_general_inf_table = Monitor::Table.new("generalInformationMonGo", "MongoDB General Information", nil, body, "compact")
|
120
|
+
mongo_general_inf_table.caption = "General Information regarding your MongoDB Instance"
|
121
|
+
|
122
|
+
persist_table(mongo_general_inf_table, agentInstanceId, menu_generalInformation)
|
123
|
+
end
|
124
|
+
|
125
|
+
def report_op_counters(agentInstanceId)
|
126
|
+
stats = @db.command('serverStatus' => 1)
|
127
|
+
report(opcountersInsert, menu_opCounter, stats['opcounters']['insert'], true, agentInstanceId, "opcountersInsertChart",
|
128
|
+
"Operation Counter Inserts", "Operation Counter Inserts across collections in the database", "area", "Time", "Count", "c", "s")
|
129
|
+
|
130
|
+
report(opcountersQuery, menu_opCounter, stats['opcounters']['query'], true, agentInstanceId, "opcountersQueryChart",
|
131
|
+
"Operation Counter Query", "Operation Counter Query across collections in the database", "area", "Time", "Count", "c", "s")
|
132
|
+
|
133
|
+
report(opcountersUpdate, menu_opCounter, stats['opcounters']['update'], true, agentInstanceId, "opcountersUpdateChart",
|
134
|
+
"Operation Counter Update", "Operation Counter Update across collections in the database", "area", "Time", "Count", "c", "s")
|
135
|
+
|
136
|
+
report(opcountersDelete, menu_opCounter, stats['opcounters']['delete'], true, agentInstanceId, "opcountersDeleteChart",
|
137
|
+
"Operation Counter Delete", "Operation Counter Delete across collections in the database", "area", "Time", "Count", "c", "s")
|
138
|
+
|
139
|
+
report(opcountersGetMore, menu_opCounter, stats['opcounters']['getmore'], true, agentInstanceId, "opcountersGetMoreChart",
|
140
|
+
"Operation Counter Get More", "Operation Counter Get More across collections in the database", "area", "Time", "Count", "c", "s")
|
141
|
+
|
142
|
+
end
|
143
|
+
|
144
|
+
def report_index_counters(agentInstanceId)
|
145
|
+
stats = @db.command('serverStatus' => 1)
|
146
|
+
|
147
|
+
if (stats["indexCounters"] and stats["indexCounters"]["btree"])
|
148
|
+
report(indexCountersBtreeAccesses, menu_idxCounter, stats['indexCounters']['btree']['accesses'], true, agentInstanceId, "btreeAccessesChart",
|
149
|
+
"Number of btree accesses", "Number of btree accesses across all collections in the database" , "area", "Time", "Count", "c", "s")
|
150
|
+
|
151
|
+
report(indexCountersBtreeMisses, menu_idxCounter, stats['indexCounters']['btree']['misses'], true, agentInstanceId, "btreeMissesChart",
|
152
|
+
"Number of btree misses", "Number of btree misses across all collections in the database" , "area", "Time", "Count", "c", "s")
|
153
|
+
|
154
|
+
report(indexCountersBtreeHits, menu_idxCounter, stats['indexCounters']['btree']['hits'], true, agentInstanceId, "btreeHitsChart",
|
155
|
+
"Number of btree hits", "Number of btree hits across all collections in the database" , "area", "Time", "Count", "c", "s")
|
156
|
+
end
|
157
|
+
end
|
158
|
+
|
159
|
+
def report_global_lock_times(agentInstanceId)
|
160
|
+
stats = @db.command('serverStatus' => 1)
|
161
|
+
if stats['globalLock']
|
162
|
+
report(globalLockLockTime, menu_globalLock, stats['globalLock']['lockTime'], false, agentInstanceId, "globalLockLockTimeChart",
|
163
|
+
"Globallock Lock Time", "The global lock time across collections in the database" , "area", "Time", "", "s", nil)
|
164
|
+
|
165
|
+
report(globalLockTotalTime, menu_globalLock, stats['globalLock']['totalTime'], false, agentInstanceId, "globalLockTotalTimeChart",
|
166
|
+
"Number of btree hits", "The global lock time in total across collections in the database" , "area", "Time", "", "s", nil)
|
167
|
+
end
|
168
|
+
end
|
169
|
+
|
170
|
+
end
|
171
|
+
end
|
172
|
+
end
|
@@ -0,0 +1,362 @@
|
|
1
|
+
{
|
2
|
+
"os.cpu.perc" : {
|
3
|
+
"chartId" : "os.cpu.perc",
|
4
|
+
"options" : {
|
5
|
+
"title" : { "text" : "CPU Usage" },
|
6
|
+
"subtitle" : { "text" : "The CPU usage/performance details" },
|
7
|
+
"chart" : {
|
8
|
+
"type": "area"
|
9
|
+
},
|
10
|
+
"xAxis" : {
|
11
|
+
"title" : {
|
12
|
+
"text" : "Date"
|
13
|
+
},
|
14
|
+
"type" : "datetime"
|
15
|
+
},
|
16
|
+
"yAxis" : {
|
17
|
+
"title" : {
|
18
|
+
"text" : "short"
|
19
|
+
},
|
20
|
+
"type" : "linear"
|
21
|
+
},
|
22
|
+
"legend" : {
|
23
|
+
"title" : "CPU Usage",
|
24
|
+
"enabled" : true,
|
25
|
+
"align" : "center",
|
26
|
+
"verticalAlign" : "bottom"
|
27
|
+
}
|
28
|
+
},
|
29
|
+
"queries" :[{
|
30
|
+
"command" : "select mean(value) from /^[[agentInstanceId]].os.cpu.perc\\./i"
|
31
|
+
}],
|
32
|
+
"agentInstanceId" : null,
|
33
|
+
"menuId" : "os.overview",
|
34
|
+
"order" : 0,
|
35
|
+
"width" : 12,
|
36
|
+
"height" : 0
|
37
|
+
},
|
38
|
+
"os.ram" : {
|
39
|
+
"chartId" : "os.ram",
|
40
|
+
"options" : {
|
41
|
+
"title" : { "text" : "RAM Usage" },
|
42
|
+
"subtitle" : { "text" : "The RAM usage/performance details" },
|
43
|
+
"chart" : {
|
44
|
+
"type": "area"
|
45
|
+
},
|
46
|
+
"xAxis" : {
|
47
|
+
"title" : {
|
48
|
+
"text" : "Date"
|
49
|
+
},
|
50
|
+
"type" : "datetime"
|
51
|
+
},
|
52
|
+
"yAxis" : {
|
53
|
+
"title" : {
|
54
|
+
"text" : "short"
|
55
|
+
},
|
56
|
+
"type" : "linear"
|
57
|
+
},
|
58
|
+
"legend" : {
|
59
|
+
"title" : "RAM Usage",
|
60
|
+
"enabled" : true,
|
61
|
+
"align" : "center",
|
62
|
+
"verticalAlign" : "bottom"
|
63
|
+
}
|
64
|
+
},
|
65
|
+
"queries" : [{
|
66
|
+
"command" : "select mean(value) from /^[[agentInstanceId]].os.ram\\./i"
|
67
|
+
}],
|
68
|
+
"agentInstanceId" : null,
|
69
|
+
"menuId" : "os.overview",
|
70
|
+
"order" : 0,
|
71
|
+
"width" : 6,
|
72
|
+
"height" : 0
|
73
|
+
},
|
74
|
+
"os.swap" : {
|
75
|
+
"chartId" : "os.swap",
|
76
|
+
"options" : {
|
77
|
+
"title" : { "text" : "Swap Usage" },
|
78
|
+
"subtitle" : { "text" : "The Swap usage/performance details" },
|
79
|
+
"chart" : {
|
80
|
+
"type": "area"
|
81
|
+
},
|
82
|
+
"xAxis" : {
|
83
|
+
"title" : {
|
84
|
+
"text" : "Date"
|
85
|
+
},
|
86
|
+
"type" : "datetime"
|
87
|
+
},
|
88
|
+
"yAxis" : {
|
89
|
+
"title" : {
|
90
|
+
"text" : "short"
|
91
|
+
},
|
92
|
+
"type" : "linear"
|
93
|
+
},
|
94
|
+
"legend" : {
|
95
|
+
"title" : "Swap Usage",
|
96
|
+
"enabled" : true,
|
97
|
+
"align" : "center",
|
98
|
+
"verticalAlign" : "bottom"
|
99
|
+
}
|
100
|
+
},
|
101
|
+
"queries" : [{
|
102
|
+
"command" : "select mean(value) from /^[[agentInstanceId]].os.swap\\./i"
|
103
|
+
}],
|
104
|
+
"agentInstanceId" : null,
|
105
|
+
"menuId" : "os.overview",
|
106
|
+
"order" : 0,
|
107
|
+
"width" : 6,
|
108
|
+
"height" : 0
|
109
|
+
},
|
110
|
+
"os.net.received.packets" : {
|
111
|
+
"chartId" : "os.net.received.packets",
|
112
|
+
"options" : {
|
113
|
+
"title" : { "text" : "Net Usage received" },
|
114
|
+
"subtitle" : { "text" : "The net usage packets received usage/performance details" },
|
115
|
+
"chart" : {
|
116
|
+
"type": "area"
|
117
|
+
},
|
118
|
+
"xAxis" : {
|
119
|
+
"title" : {
|
120
|
+
"text" : "Date"
|
121
|
+
},
|
122
|
+
"type" : "datetime"
|
123
|
+
},
|
124
|
+
"yAxis" : {
|
125
|
+
"title" : {
|
126
|
+
"text" : "bytes"
|
127
|
+
},
|
128
|
+
"type" : "linear"
|
129
|
+
},
|
130
|
+
"legend" : {
|
131
|
+
"title" : "Net Usage received",
|
132
|
+
"enabled" : true,
|
133
|
+
"align" : "center",
|
134
|
+
"verticalAlign" : "bottom"
|
135
|
+
}
|
136
|
+
},
|
137
|
+
"queries" : [{
|
138
|
+
"command" : "select derivative(value) from /^[[agentInstanceId]].os.network.received.packets\\./i WHERE time > now() - 300s GROUP BY time(10s)"
|
139
|
+
}],
|
140
|
+
"agentInstanceId" : null,
|
141
|
+
"menuId" : "os.overview",
|
142
|
+
"order" : 0,
|
143
|
+
"width" : 12,
|
144
|
+
"height" : 0
|
145
|
+
},
|
146
|
+
"os.net.send.packets" : {
|
147
|
+
"chartId" : "os.net.send.packets",
|
148
|
+
"options" : {
|
149
|
+
"title" : { "text" : "Net Usage packets send" },
|
150
|
+
"subtitle" : { "text" : "The net usage packets send usage/performance details" },
|
151
|
+
"chart" : {
|
152
|
+
"type": "area"
|
153
|
+
},
|
154
|
+
"xAxis" : {
|
155
|
+
"title" : {
|
156
|
+
"text" : "Date"
|
157
|
+
},
|
158
|
+
"type" : "datetime"
|
159
|
+
},
|
160
|
+
"yAxis" : {
|
161
|
+
"title" : {
|
162
|
+
"text" : "bytes"
|
163
|
+
},
|
164
|
+
"type" : "linear"
|
165
|
+
},
|
166
|
+
"legend" : {
|
167
|
+
"title" : "Net Usage send",
|
168
|
+
"enabled" : true,
|
169
|
+
"align" : "center",
|
170
|
+
"verticalAlign" : "bottom"
|
171
|
+
}
|
172
|
+
},
|
173
|
+
"queries" : [{
|
174
|
+
"command" : "select derivative(value) from /^[[agentInstanceId]].os.network.send.packets\\./i WHERE time > now() - 300s GROUP BY time(10s)"
|
175
|
+
}],
|
176
|
+
"agentInstanceId" : null,
|
177
|
+
"menuId" : "os.overview",
|
178
|
+
"order" : 0,
|
179
|
+
"width" : 12,
|
180
|
+
"height" : 0
|
181
|
+
},
|
182
|
+
"os.net.received.bytes" : {
|
183
|
+
"chartId" : "os.net.received.bytes",
|
184
|
+
"options" : {
|
185
|
+
"title" : { "text" : "Net Usage bytes received" },
|
186
|
+
"subtitle" : { "text" : "The net usage bytes received usage/performance details" },
|
187
|
+
"chart" : {
|
188
|
+
"type": "area"
|
189
|
+
},
|
190
|
+
"xAxis" : {
|
191
|
+
"title" : {
|
192
|
+
"text" : "Date"
|
193
|
+
},
|
194
|
+
"type" : "datetime"
|
195
|
+
},
|
196
|
+
"yAxis" : {
|
197
|
+
"title" : {
|
198
|
+
"text" : "bytes"
|
199
|
+
},
|
200
|
+
"type" : "linear"
|
201
|
+
},
|
202
|
+
"legend" : {
|
203
|
+
"title" : "Net Usage bytes received",
|
204
|
+
"enabled" : true,
|
205
|
+
"align" : "center",
|
206
|
+
"verticalAlign" : "bottom"
|
207
|
+
}
|
208
|
+
},
|
209
|
+
"queries" : [{
|
210
|
+
"command" : "select derivative(value) from /^[[agentInstanceId]].os.network.received.bytes\\./i WHERE time > now() - 300s GROUP BY time(10s)"
|
211
|
+
}],
|
212
|
+
"agentInstanceId" : null,
|
213
|
+
"menuId" : "os.overview",
|
214
|
+
"order" : 0,
|
215
|
+
"width" : 12,
|
216
|
+
"height" : 0
|
217
|
+
},
|
218
|
+
"os.net.send.bytes" : {
|
219
|
+
"chartId" : "os.net.send.bytes",
|
220
|
+
"options" : {
|
221
|
+
"title" : { "text" : "Net Usage bytes send" },
|
222
|
+
"subtitle" : { "text" : "The net usage bytes send usage/performance details" },
|
223
|
+
"chart" : {
|
224
|
+
"type": "area"
|
225
|
+
},
|
226
|
+
"xAxis" : {
|
227
|
+
"title" : {
|
228
|
+
"text" : "Date"
|
229
|
+
},
|
230
|
+
"type" : "datetime"
|
231
|
+
},
|
232
|
+
"yAxis" : {
|
233
|
+
"title" : {
|
234
|
+
"text" : "bytes"
|
235
|
+
},
|
236
|
+
"type" : "linear"
|
237
|
+
},
|
238
|
+
"legend" : {
|
239
|
+
"title" : "Net Usage bytes send",
|
240
|
+
"enabled" : true,
|
241
|
+
"align" : "center",
|
242
|
+
"verticalAlign" : "bottom"
|
243
|
+
}
|
244
|
+
},
|
245
|
+
"queries" : [{
|
246
|
+
"command" : "select derivative(value) from /^[[agentInstanceId]].os.network.send.bytes\\./i WHERE time > now() - 300s GROUP BY time(10s)"
|
247
|
+
}],
|
248
|
+
"agentInstanceId" : null,
|
249
|
+
"menuId" : "os.overview",
|
250
|
+
"order" : 0,
|
251
|
+
"width" : 12,
|
252
|
+
"height" : 0
|
253
|
+
},
|
254
|
+
"os.disk.usage" : {
|
255
|
+
"chartId" : "os.disk.usage",
|
256
|
+
"options" : {
|
257
|
+
"title" : { "text" : "Disk Usage" },
|
258
|
+
"subtitle" : { "text" : "The disk usage" },
|
259
|
+
"chart" : {
|
260
|
+
"type": "pie"
|
261
|
+
},
|
262
|
+
"xAxis" : {
|
263
|
+
"title" : {
|
264
|
+
"text" : "Last 15 Minutes"
|
265
|
+
},
|
266
|
+
"type" : "datetime"
|
267
|
+
},
|
268
|
+
"yAxis" : {
|
269
|
+
"title" : {
|
270
|
+
"text" : "bytes"
|
271
|
+
},
|
272
|
+
"type" : "linear"
|
273
|
+
},
|
274
|
+
"legend" : {
|
275
|
+
"title" : "Disk Usage",
|
276
|
+
"enabled" : true,
|
277
|
+
"align" : "center",
|
278
|
+
"verticalAlign" : "bottom"
|
279
|
+
}
|
280
|
+
},
|
281
|
+
"queries" : [{
|
282
|
+
"command" : "select value from /^[[agentInstanceId]].os.disk.usage\\./i where time > now() - 15m group by time(15m) limit 1"
|
283
|
+
}],
|
284
|
+
"agentInstanceId" : null,
|
285
|
+
"menuId" : "os.overview",
|
286
|
+
"order" : 0,
|
287
|
+
"width" : 6,
|
288
|
+
"height" : 0
|
289
|
+
},
|
290
|
+
"os.disk.read" : {
|
291
|
+
"chartId" : "os.disk.read",
|
292
|
+
"options" : {
|
293
|
+
"title" : { "text" : "Disk read Usage" },
|
294
|
+
"subtitle" : { "text" : "The disk read usage/performance details" },
|
295
|
+
"chart" : {
|
296
|
+
"type": "area"
|
297
|
+
},
|
298
|
+
"xAxis" : {
|
299
|
+
"title" : {
|
300
|
+
"text" : "Date"
|
301
|
+
},
|
302
|
+
"type" : "datetime"
|
303
|
+
},
|
304
|
+
"yAxis" : {
|
305
|
+
"title" : {
|
306
|
+
"text" : "bytes"
|
307
|
+
},
|
308
|
+
"type" : "linear"
|
309
|
+
},
|
310
|
+
"legend" : {
|
311
|
+
"title" : "Disk read usage",
|
312
|
+
"enabled" : true,
|
313
|
+
"align" : "center",
|
314
|
+
"verticalAlign" : "bottom"
|
315
|
+
}
|
316
|
+
},
|
317
|
+
"queries" : [{
|
318
|
+
"command" : "select derivative(value) from /^[[agentInstanceId]].os.disk.iops\\./i WHERE time > now() - 300s GROUP BY time(10s)"
|
319
|
+
}],
|
320
|
+
"agentInstanceId" : null,
|
321
|
+
"menuId" : "os.overview",
|
322
|
+
"order" : 0,
|
323
|
+
"width" : 6,
|
324
|
+
"height" : 0
|
325
|
+
},
|
326
|
+
"os.disk.write" : {
|
327
|
+
"chartId" : "os.disk.write",
|
328
|
+
"options" : {
|
329
|
+
"title" : { "text" : "Disk write Usage" },
|
330
|
+
"subtitle" : { "text" : "The disk write usage/performance details" },
|
331
|
+
"chart" : {
|
332
|
+
"type": "area"
|
333
|
+
},
|
334
|
+
"xAxis" : {
|
335
|
+
"title" : {
|
336
|
+
"text" : "Date"
|
337
|
+
},
|
338
|
+
"type" : "datetime"
|
339
|
+
},
|
340
|
+
"yAxis" : {
|
341
|
+
"title" : {
|
342
|
+
"text" : "bytes"
|
343
|
+
},
|
344
|
+
"type" : "linear"
|
345
|
+
},
|
346
|
+
"legend" : {
|
347
|
+
"title" : "Disk write usage",
|
348
|
+
"enabled" : true,
|
349
|
+
"align" : "center",
|
350
|
+
"verticalAlign" : "bottom"
|
351
|
+
}
|
352
|
+
},
|
353
|
+
"queries" : [{
|
354
|
+
"command" : "select derivative(value) from /^[[agentInstanceId]].os.disk.iops\\./i WHERE time > now() - 300s GROUP BY time(10s)"
|
355
|
+
}],
|
356
|
+
"agentInstanceId" : null,
|
357
|
+
"menuId" : "os.overview",
|
358
|
+
"order" : 0,
|
359
|
+
"width" : 6,
|
360
|
+
"height" : 0
|
361
|
+
}
|
362
|
+
}
|