Files
librenms-librenms/includes/html/graphs/application/cape_pkg_stats.inc.php
Zane C. Bowers-Hadley 98c033e84f CAPEv2 support (#14801)
* re-add it

* add cape app page

* add initial cape graphs

* now work for the general page

* more udpates

* add cape pending

* add pending and cleanup for if there are no packages(likely cuckoo, so don't add extra items)

* rework the lack of packages a bit more

* more cuckoo related cleanupgiot

* fix cape error logging

* minor cleanups

* add a new graph and use it with cape... also lots of cape cleanups

* misc cape updates

* add percentile values for stats

* add fix for weekly

* don't display 1 day average if under 17 hours

* zero timeslots of packages not used for this time slot

* add avg stat graphs for cape

* now use the average graphs and update the app page

* add a new graph

* add CAPEv2 docs

* add tests data

* lots of style cleanup

* another tweak for the test data

* fix misc style issues

* add cape to apps page

* add nicecase for cape

* case fix

* json fix for test data

* add a missing stat

* some more test data tweaking

* more misc test updates

* more test tweaking

* more test work...

* more test data work

* add what is hopefully the final test tweak
2023-01-24 11:20:18 -06:00

97 lines
3.7 KiB
PHP

<?php
$name = 'cape';
$app_id = $app['app_id'];
$unit_text = 'Count';
$colours = 'psychedelic';
$dostack = 0;
$printtotal = 1;
$addarea = 0;
$transparency = 15;
$float_precision = 3;
$rrd_filename_anti_issues = Rrd::name($device['hostname'], ['app', $name, $app['app_id'], 'pkg-anti_issues___-___', $vars['package']]);
$rrd_filename_api_calls = Rrd::name($device['hostname'], ['app', $name, $app['app_id'], 'pkg-api_calls___-___', $vars['package']]);
$rrd_filename_domains = Rrd::name($device['hostname'], ['app', $name, $app['app_id'], 'pkg-domains___-___', $vars['package']]);
$rrd_filename_crash_issues = Rrd::name($device['hostname'], ['app', $name, $app['app_id'], 'pkg-crash_issues___-___', $vars['package']]);
$rrd_filename_dropped_files = Rrd::name($device['hostname'], ['app', $name, $app['app_id'], 'pkg-dropped_files___-___', $vars['package']]);
$rrd_filename_files_written = Rrd::name($device['hostname'], ['app', $name, $app['app_id'], 'pkg-files_written___-___', $vars['package']]);
$rrd_filename_reg_keys_mod = Rrd::name($device['hostname'], ['app', $name, $app['app_id'], 'pkg-reg_keys_mod___-___', $vars['package']]);
$rrd_filename_running_processes = Rrd::name($device['hostname'], ['app', $name, $app['app_id'], 'pkg-running_processes___-___', $vars['package']]);
$rrd_filename_signatures_alert = Rrd::name($device['hostname'], ['app', $name, $app['app_id'], 'pkg-signatures_alert___-___', $vars['package']]);
$rrd_filename_signatures_total = Rrd::name($device['hostname'], ['app', $name, $app['app_id'], 'pkg-signatures_total___-___', $vars['package']]);
$rrd_list = [];
if (Rrd::checkRrdExists($rrd_filename_dropped_files)) {
$rrd_list[] = [
'filename' => $rrd_filename_dropped_files,
'descr' => 'dropped_files',
'ds' => 'dropped_files',
];
}
if (Rrd::checkRrdExists($rrd_filename_running_processes)) {
$rrd_list[] = [
'filename' => $rrd_filename_running_processes,
'descr' => 'running_processes',
'ds' => 'running_processes',
];
}
if (Rrd::checkRrdExists($rrd_filename_api_calls)) {
$rrd_list[] = [
'filename' => $rrd_filename_api_calls,
'descr' => 'api_calls',
'ds' => 'api_calls',
];
}
if (Rrd::checkRrdExists($rrd_filename_domains)) {
$rrd_list[] = [
'filename' => $rrd_filename_domains,
'descr' => 'domains',
'ds' => 'domains',
];
}
if (Rrd::checkRrdExists($rrd_filename_signatures_total)) {
$rrd_list[] = [
'filename' => $rrd_filename_signatures_total,
'descr' => 'signatures_total',
'ds' => 'signatures_total',
];
}
if (Rrd::checkRrdExists($rrd_filename_signatures_alert)) {
$rrd_list[] = [
'filename' => $rrd_filename_signatures_alert,
'descr' => 'signatures_alert',
'ds' => 'signatures_alert',
];
}
if (Rrd::checkRrdExists($rrd_filename_files_written)) {
$rrd_list[] = [
'filename' => $rrd_filename_files_written,
'descr' => 'files_written',
'ds' => 'files_written',
];
}
if (Rrd::checkRrdExists($rrd_filename_reg_keys_mod)) {
$rrd_list[] = [
'filename' => $rrd_filename_reg_keys_mod,
'descr' => 'reg_keys_mod',
'ds' => 'reg_keys_mod',
];
}
if (Rrd::checkRrdExists($rrd_filename_crash_issues)) {
$rrd_list[] = [
'filename' => $rrd_filename_crash_issues,
'descr' => 'crash_issues',
'ds' => 'crash_issues',
];
}
if (Rrd::checkRrdExists($rrd_filename_anti_issues)) {
$rrd_list[] = [
'filename' => $rrd_filename_anti_issues,
'descr' => 'anti_issues',
'ds' => 'anti_issues',
];
}
require 'includes/html/graphs/generic_multi_line.inc.php';