summaryrefslogtreecommitdiff
path: root/config-jarmon.js
diff options
context:
space:
mode:
Diffstat (limited to 'config-jarmon.js')
-rw-r--r--config-jarmon.js156
1 files changed, 156 insertions, 0 deletions
diff --git a/config-jarmon.js b/config-jarmon.js
new file mode 100644
index 0000000..2159221
--- /dev/null
+++ b/config-jarmon.js
@@ -0,0 +1,156 @@
+/* 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 proton = 'https://proton.parabola.nu/collectd/proton.parabola.nu/'
+ var winston = 'https://winston.parabola.nu/collectd/winston.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: [
+ [proton+'cpu-0/cpu-steal.rrd', 0, 'Steal', 'jiffy'],
+ [proton+'cpu-0/cpu-interrupt.rrd', 0, 'IRQ', 'jiffy'],
+ [proton+'cpu-0/cpu-softirq.rrd', 0, 'SoftIRQ', 'jiffy'],
+ [proton+'cpu-0/cpu-system.rrd', 0, 'System', 'jiffy'],
+ [proton+'cpu-0/cpu-wait.rrd', 0, 'IO', 'jiffy'],
+ [proton+'cpu-0/cpu-user.rrd', 0, 'User', 'jiffy'],
+ //[proton+'cpu-0/cpu-nice.rrd', 0, 'Nice', 'jiffy'],
+ [proton+'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: [
+ [proton+'memory/memory-used.rrd', 0, 'Used', 'B'],
+ [proton+'memory/memory-slab_unrecl.rrd', 0, 'Slab', 'B'],
+ [proton+'memory/memory-slab_recl.rrd', 0, 'Slab (Recl)', 'B'],
+ [proton+'memory/memory-cached.rrd', 0, 'Cached', 'B'],
+ [proton+'memory/memory-buffered.rrd', 0, 'Buffered', 'B'],
+ [proton+'memory/memory-free.rrd', 0, 'Free', 'B']
+ ],
+ options: jQuery.extend(true, {}, jarmon.Chart.BASE_OPTIONS,
+ jarmon.Chart.STACKED_OPTIONS)
+ },
+
+ 'load': {
+ title: 'Load Average',
+ data: [
+ [proton+'load/load.rrd', 'shortterm', 'Short Term', ''],
+ [proton+'load/load.rrd', 'midterm', 'Medium Term', ''],
+ [proton+'load/load.rrd', 'longterm', 'Long Term', '']
+ ],
+ options: jQuery.extend(true, {}, jarmon.Chart.BASE_OPTIONS)
+ },
+
+ 'interface-inet': {
+ title: 'ens18 Throughput',
+ data: [
+ [proton+'interface-ens18/if_octets.rrd', 'tx', 'Transmit', 'bit/s', function (v) { return -v*8; }],
+ [proton+'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: [
+ [proton+'interface-lvpn/if_octets.rrd', 'tx', 'Transmit', 'bit/s', function (v) { return -v*8; }],
+ [proton+'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: [
+ [proton+'interface-lo/if_octets.rrd', 'tx', 'Transmit', 'bit/s', function (v) { return -v*8; }],
+ [proton+'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: [
+ [proton+'entropy/entropy.rrd', 0, 'Entropy', 'b']
+ ],
+ options: jQuery.extend(true, {},
+ jarmon.Chart.BASE_OPTIONS,
+ {series: {lines: {fill: 0.5}}})
+ },
+
+ 'users': {
+ title: 'Users',
+ data: [
+ [proton+'users/users.rrd', 0, 'Users', 'users']
+ ],
+ options: jQuery.extend(true, {},
+ jarmon.Chart.BASE_OPTIONS,
+ {series: {lines: {fill: 0.5}}})
+ },
+
+ 'uptime': {
+ title: 'Uptime',
+ data: [
+ [proton+'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: [
+ [proton+'swap/swap-used.rrd', 0, 'Used', 'B'],
+ [proton+'swap/swap-cached.rrd', 0, 'Cached', 'B'],
+ [proton+'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 */
+ [proton+'swap/swap_io-in.rrd', 0, 'In', 'page'],
+ [proton+'swap/swap_io-out.rrd', 0, 'Out', 'page']
+ ],
+ options: jQuery.extend(true, {}, jarmon.Chart.BASE_OPTIONS)
+ }
+ };
+
+ var chartTemplate = $('.chart-container').remove();
+
+ jarmon.buildTabbedChartUi(
+ chartTemplate,
+ chartRecipes,
+ $('.tabbed-chart-interface'),
+ tabRecipes,
+ $('.chartRangeControl')
+ );
+});