summaryrefslogtreecommitdiff
path: root/cfg/jarmon-proton.js
diff options
context:
space:
mode:
Diffstat (limited to 'cfg/jarmon-proton.js')
-rw-r--r--cfg/jarmon-proton.js155
1 files changed, 155 insertions, 0 deletions
diff --git a/cfg/jarmon-proton.js b/cfg/jarmon-proton.js
new file mode 100644
index 0000000..532f802
--- /dev/null
+++ b/cfg/jarmon-proton.js
@@ -0,0 +1,155 @@
+/* Copyright (c) Richard Wall
+ * See LICENSE for details.
+ *
+ * Some example recipes for Collectd RRD data - you *will* need to modify this
+ * based on the RRD data available on your system.
+ */
+
+$(function() {
+
+ for (var i = 0; i < jarmon.timeRangeShortcuts.length; i++) {
+ if (jarmon.timeRangeShortcuts[i][0] === 'last day') {
+ jarmon.timeRangeShortcuts[i][2] = true;
+ }
+ }
+
+ var srv = 'https://proton.parabola.nu/collectd/proton.parabola.nu/'
+
+ var tabRecipes = [
+ ['Overview', ['cpu', 'memory', 'swap-use']],
+ ['Iface', ['interface-inet', 'interface-lvpn', 'interface-lo']],
+ ['Other', ['load', 'swap-use', 'swap-io', 'users', 'entropy', 'uptime']],
+ ];
+
+ var chartRecipes = {
+ 'cpu': {
+ title: 'CPU Usage',
+ data: [
+ [srv+'cpu-0/cpu-steal.rrd', 0, 'Steal', 'jiffy'],
+ [srv+'cpu-0/cpu-interrupt.rrd', 0, 'IRQ', 'jiffy'],
+ [srv+'cpu-0/cpu-softirq.rrd', 0, 'SoftIRQ', 'jiffy'],
+ [srv+'cpu-0/cpu-system.rrd', 0, 'System', 'jiffy'],
+ [srv+'cpu-0/cpu-wait.rrd', 0, 'IO', 'jiffy'],
+ [srv+'cpu-0/cpu-user.rrd', 0, 'User', 'jiffy'],
+ //[srv+'cpu-0/cpu-nice.rrd', 0, 'Nice', 'jiffy'],
+ [srv+'cpu-0/cpu-idle.rrd', 0, 'Idle', 'jiffy'],
+ ],
+ options: jQuery.extend(true, {},
+ jarmon.Chart.BASE_OPTIONS,
+ jarmon.Chart.STACKED_OPTIONS,
+ {yaxis: {min: 0, max: 110}})
+ },
+
+ 'memory': {
+ title: 'Memory',
+ data: [
+ [srv+'memory/memory-used.rrd', 0, 'Used', 'B'],
+ [srv+'memory/memory-slab_unrecl.rrd', 0, 'Slab', 'B'],
+ [srv+'memory/memory-slab_recl.rrd', 0, 'Slab (Recl)', 'B'],
+ [srv+'memory/memory-cached.rrd', 0, 'Cached', 'B'],
+ [srv+'memory/memory-buffered.rrd', 0, 'Buffered', 'B'],
+ [srv+'memory/memory-free.rrd', 0, 'Free', 'B']
+ ],
+ options: jQuery.extend(true, {}, jarmon.Chart.BASE_OPTIONS,
+ jarmon.Chart.STACKED_OPTIONS)
+ },
+
+ 'load': {
+ title: 'Load Average',
+ data: [
+ [srv+'load/load.rrd', 'shortterm', 'Short Term (1m)', ''],
+ [srv+'load/load.rrd', 'midterm', 'Medium Term (5m)', ''],
+ [srv+'load/load.rrd', 'longterm', 'Long Term (15m)', '']
+ ],
+ options: jQuery.extend(true, {}, jarmon.Chart.BASE_OPTIONS)
+ },
+
+ 'interface-inet': {
+ title: 'ens18 Throughput',
+ data: [
+ [srv+'interface-ens18/if_octets.rrd', 'tx', 'Transmit', 'bit/s', function (v) { return -v*8; }],
+ [srv+'interface-ens18/if_octets.rrd', 'rx', 'Receive', 'bit/s', function (v) { return v*8; }]
+ ],
+ options: jQuery.extend(true, {}, jarmon.Chart.BASE_OPTIONS)
+ },
+
+ 'interface-lvpn': {
+ title: 'lvpn Throughput',
+ data: [
+ [srv+'interface-lvpn/if_octets.rrd', 'tx', 'Transmit', 'bit/s', function (v) { return -v*8; }],
+ [srv+'interface-lvpn/if_octets.rrd', 'rx', 'Receive', 'bit/s', function (v) { return v*8; }]
+ ],
+ options: jQuery.extend(true, {}, jarmon.Chart.BASE_OPTIONS)
+ },
+
+ 'interface-lo': {
+ title: 'lo Throughput',
+ data: [
+ [srv+'interface-lo/if_octets.rrd', 'tx', 'Transmit', 'bit/s', function (v) { return -v*8; }],
+ [srv+'interface-lo/if_octets.rrd', 'rx', 'Receive', 'bit/s', function (v) { return v*8; }]
+ ],
+ options: jQuery.extend(true, {}, jarmon.Chart.BASE_OPTIONS)
+ },
+
+ 'entropy': {
+ title: 'Entropy',
+ data: [
+ [srv+'entropy/entropy.rrd', 0, 'Entropy', 'b']
+ ],
+ options: jQuery.extend(true, {},
+ jarmon.Chart.BASE_OPTIONS,
+ {series: {lines: {fill: 0.5}}})
+ },
+
+ 'users': {
+ title: 'Users',
+ data: [
+ [srv+'users/users.rrd', 0, 'Users', 'users']
+ ],
+ options: jQuery.extend(true, {},
+ jarmon.Chart.BASE_OPTIONS,
+ {series: {lines: {fill: 0.5}}})
+ },
+
+ 'uptime': {
+ title: 'Uptime',
+ data: [
+ [srv+'uptime/uptime.rrd', 0, 'Uptime', 'days', function(v) { return v/(60*60*24); }]
+ ],
+ options: jQuery.extend(true, {},
+ jarmon.Chart.BASE_OPTIONS,
+ {series: {lines: {fill: 0.5}}})
+ },
+
+ 'swap-use': {
+ title: 'Swap Usage',
+ data: [
+ [srv+'swap/swap-used.rrd', 0, 'Used', 'B'],
+ [srv+'swap/swap-cached.rrd', 0, 'Cached', 'B'],
+ [srv+'swap/swap-free.rrd', 0, 'Free', 'B']
+ ],
+ options: jQuery.extend(true, {}, jarmon.Chart.BASE_OPTIONS,
+ jarmon.Chart.STACKED_OPTIONS)
+ },
+
+ 'swap-io': {
+ title: 'Swap IO',
+ data: [
+ // In pages unless the Swap.ReportBytes option is set
+ [srv+'swap/swap_io-in.rrd', 0, 'In', 'page'],
+ [srv+'swap/swap_io-out.rrd', 0, 'Out', 'page']
+ ],
+ options: jQuery.extend(true, {}, jarmon.Chart.BASE_OPTIONS)
+ }
+ };
+
+ var chartTemplate = $(".jarmon.proton .chart-container").remove();
+
+ jarmon.buildTabbedChartUi(
+ chartTemplate,
+ chartRecipes,
+ $('.jarmon.proton .tabbed-chart-interface'),
+ tabRecipes,
+ $('.jarmon.proton .chartRangeControl')
+ );
+});