mirror of
https://github.com/librenms/librenms.git
synced 2024-09-21 18:38:25 +00:00
commit
d68949b724
@ -5,6 +5,7 @@ $common_output[] = '
|
||||
<table id="syslog" class="table table-hover table-condensed table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th data-column-id="priority"> </th>
|
||||
<th data-column-id="timestamp" data-order="desc">Datetime</th>
|
||||
<th data-column-id="device_id">Hostname</th>
|
||||
<th data-column-id="program">Program</th>
|
||||
@ -21,7 +22,11 @@ var syslog_grid = $("#syslog").bootgrid({
|
||||
{
|
||||
return {
|
||||
id: "syslog",
|
||||
device: "' .mres($vars['device']) .'",
|
||||
device: "'.mres($vars['device']) .'",
|
||||
program: "'.mres($vars['program']).'",
|
||||
priority: "'.mres($vars['priority']).'",
|
||||
to: "'.mres($vars['to']).'",
|
||||
from: "'.mres($vars['from']).'",
|
||||
};
|
||||
},
|
||||
url: "ajax_table.php"
|
||||
|
@ -17,6 +17,11 @@ if (is_numeric($_POST['device'])) {
|
||||
$param[] = $_POST['device'];
|
||||
}
|
||||
|
||||
if ($_POST['priority']) {
|
||||
$where .= ' AND S.priority = ?';
|
||||
$param[] = $_POST['priority'];
|
||||
}
|
||||
|
||||
if (!empty($_POST['from'])) {
|
||||
$where .= ' AND timestamp >= ?';
|
||||
$param[] = $_POST['from'];
|
||||
@ -64,7 +69,8 @@ $sql = "SELECT S.*, DATE_FORMAT(timestamp, '".$config['dateformat']['mysql']['co
|
||||
foreach (dbFetchRows($sql, $param) as $syslog) {
|
||||
$dev = device_by_id_cache($syslog['device_id']);
|
||||
$response[] = array(
|
||||
'timestamp' => $syslog['date'],
|
||||
'priority' => generate_priority_icon($syslog['priority']),
|
||||
'timestamp' => '<div style="white-space:nowrap;">'.$syslog['date'].'</div>',
|
||||
'device_id' => generate_device_link($dev, shorthost($dev['hostname'])),
|
||||
'program' => $syslog['program'],
|
||||
'msg' => htmlspecialchars($syslog['msg']),
|
||||
|
@ -10,86 +10,82 @@ if ($vars['action'] == 'expunge' && $_SESSION['userlevel'] >= '10') {
|
||||
}
|
||||
|
||||
$pagetitle[] = 'Syslog';
|
||||
|
||||
print_optionbar_start();
|
||||
|
||||
?>
|
||||
|
||||
<div class="table-responsive">
|
||||
<table id="syslog" class="table table-hover table-condensed table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th data-column-id="timestamp" data-order="desc">Datetime</th>
|
||||
<th data-column-id="device_id">Hostname</th>
|
||||
<th data-column-id="program">Program</th>
|
||||
<th data-column-id="msg">Message</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
var grid = $("#syslog").bootgrid({
|
||||
ajax: true,
|
||||
templates: {
|
||||
header: "<div id=\"{{ctx.id}}\" class=\"{{css.header}}\"><div class=\"row\">"+
|
||||
"<div class=\"col-sm-9 actionBar\"><span class=\"pull-left\">"+
|
||||
"<form method=\"post\" action=\"\" class=\"form-inline\" role=\"form\" id=\"result_form\">"+
|
||||
"<div class=\"form-group\">"+
|
||||
"<select name=\"device\" id=\"device\" class=\"form-control input-sm\">"+
|
||||
"<option value=\"\">All Devices</option>"+
|
||||
<div id="{{ctx.id}}" class="{{css.header}}">
|
||||
<div class="row">
|
||||
<div class="col-sm-9 actionBar">
|
||||
<div class="pull-left">
|
||||
<form method="post" action="" class="form-inline" role="form" id="result_form">
|
||||
<div class="form-group">
|
||||
<select name="device" id="device" class="form-control input-sm">
|
||||
<option value="">All Devices</option>
|
||||
<?php
|
||||
foreach (get_all_devices() as $hostname) {
|
||||
$device_id = getidbyname($hostname);
|
||||
if (device_permitted($device_id)) {
|
||||
echo '"<option value=\"'.$device_id.'\"';
|
||||
echo '"<option value="'.$device_id.'"';
|
||||
if ($device_id == $vars['device']) {
|
||||
echo ' selected';
|
||||
}
|
||||
|
||||
echo '>'.$hostname.'</option>"+';
|
||||
echo '>'.$hostname.'</option>';
|
||||
}
|
||||
}
|
||||
?>
|
||||
"</select>"+
|
||||
"</div>"+
|
||||
"<div class=\"form-group\">"+
|
||||
"<select name=\"program\" id=\"program\" class=\"form-control input-sm\">"+
|
||||
"<option value=\"\">All Programs</option>"+
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<select name="program" id="program" class="form-control input-sm">
|
||||
<option value="">All Programs</option>
|
||||
<?php
|
||||
foreach (dbFetchRows('SELECT DISTINCT `program` FROM `syslog` ORDER BY `program`') as $data) {
|
||||
echo '"<option value=\"'.$data['program'].'\"';
|
||||
echo '"<option value="'.$data['program'].'"';
|
||||
if ($data['program'] == $vars['program']) {
|
||||
echo ' selected';
|
||||
}
|
||||
|
||||
echo '>'.$data['program'].'</option>"+';
|
||||
echo '>'.$data['program'].'</option>';
|
||||
}
|
||||
?>
|
||||
"</select>"+
|
||||
"</div>"+
|
||||
"<div class=\"form-group\">"+
|
||||
"<input name=\"from\" type=\"text\" class=\"form-control input-sm\" id=\"dtpickerfrom\" maxlength=\"16\" value=\"<?php echo $vars['from']; ?>\" placeholder=\"From\" data-date-format=\"YYYY-MM-DD HH:mm\">"+
|
||||
"</div>"+
|
||||
"<div class=\"form-group\">"+
|
||||
"<input name=\"to\" type=\"text\" class=\"form-control input-sm\" id=\"dtpickerto\" maxlength=\"16\" value=\"<?php echo $vars['to']; ?>\" placeholder=\"To\" data-date-format=\"YYYY-MM-DD HH:mm\">"+
|
||||
"</div>"+
|
||||
"<button type=\"submit\" class=\"btn btn-default input-sm\">Filter</button>"+
|
||||
"</form></span></div>"+
|
||||
"<div class=\"col-sm-3 actionBar\"><p class=\"{{css.actions}}\"></p></div></div></div>"
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<select name="priority" id="priority" class="form-control input-sm">
|
||||
<option value="">All Priorities</option>
|
||||
<?php
|
||||
foreach (dbFetchRows('SELECT DISTINCT `priority` FROM `syslog` ORDER BY `level`') as $data) {
|
||||
echo '"<option value="'.$data['priority'].'"';
|
||||
if ($data['priority'] == $vars['priority']) {
|
||||
echo ' selected';
|
||||
}
|
||||
|
||||
},
|
||||
post: function ()
|
||||
{
|
||||
return {
|
||||
id: "syslog",
|
||||
device: '<?php echo htmlspecialchars($vars['device']); ?>',
|
||||
program: '<?php echo htmlspecialchars($vars['program']); ?>',
|
||||
to: '<?php echo htmlspecialchars($vars['to']); ?>',
|
||||
from: '<?php echo htmlspecialchars($vars['from']); ?>',
|
||||
};
|
||||
},
|
||||
url: "ajax_table.php"
|
||||
});
|
||||
echo '>'.$data['priority'].'</option>';
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input name="from" type="text" class="form-control input-sm" id="dtpickerfrom" maxlength="16" value="<?php echo $vars['from']; ?>" placeholder="From" data-date-format="YYYY-MM-DD HH:mm">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input name="to" type="text" class="form-control input-sm" id="dtpickerto" maxlength="16" value="<?php echo $vars['to']; ?>" placeholder="To" data-date-format="YYYY-MM-DD HH:mm">
|
||||
</div>
|
||||
<button type="submit" class="btn btn-default input-sm">Filter</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3 actionBar">
|
||||
<p class="{{css.actions}}"></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
$(function () {
|
||||
$("#dtpickerfrom").datetimepicker();
|
||||
$("#dtpickerfrom").on("dp.change", function (e) {
|
||||
@ -109,3 +105,10 @@ $(function () {
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<?php
|
||||
print_optionbar_end();
|
||||
require_once 'includes/common/syslog.inc.php';
|
||||
echo implode('',$common_output);
|
||||
?>
|
||||
|
||||
|
@ -16,6 +16,21 @@
|
||||
* the source code distribution for details.
|
||||
*/
|
||||
|
||||
function generate_priority_icon($priority) {
|
||||
$map = array(
|
||||
"emerg" => "server_delete",
|
||||
"alert" => "cancel",
|
||||
"crit" => "application_lightning",
|
||||
"err" => "application_delete",
|
||||
"warning" => "application_error",
|
||||
"notice" => "application_edit",
|
||||
"info" => "application",
|
||||
"debug" => "bug",
|
||||
);
|
||||
|
||||
return '<img src="images/16/' . $map[$priority] .'.png" title="' . $priority . '">';
|
||||
}
|
||||
|
||||
function format_number_short($number, $sf) {
|
||||
// This formats a number so that we only send back three digits plus an optional decimal point.
|
||||
// Example: 723.42 -> 723 72.34 -> 72.3 2.23 -> 2.23
|
||||
|
Loading…
Reference in New Issue
Block a user