syntaxer run

git-svn-id: http://www.observium.org/svn/observer/trunk@2967 61d68cd4-352d-0410-923a-c4978735b2b8
This commit is contained in:
Tom Laermans
2012-04-05 16:44:58 +00:00
parent 392d97bf73
commit 4fad2ccc68
7 changed files with 62 additions and 55 deletions

View File

@@ -3,16 +3,17 @@
function format_bytes_billing($value) function format_bytes_billing($value)
{ {
global $config; global $config;
return format_number($value, $config['billing']['base'])."B"; return format_number($value, $config['billing']['base'])."B";
} }
function format_bytes_billing_short($value) function format_bytes_billing_short($value)
{ {
global $config; global $config;
return format_number($value, $config['billing']['base'], 2, 3); return format_number($value, $config['billing']['base'], 2, 3);
} }
function getDates($dayofmonth, $months=0) function getDates($dayofmonth, $months=0)
{ {
$dayofmonth = zeropad($dayofmonth); $dayofmonth = zeropad($dayofmonth);
@@ -30,13 +31,12 @@ function getDates($dayofmonth, $months=0)
date_sub($date_start, date_interval_create_from_date_string('1 month')); date_sub($date_start, date_interval_create_from_date_string('1 month'));
} }
if($months > 0) if ($months > 0)
{ {
date_sub($date_start, date_interval_create_from_date_string($months.' month')); date_sub($date_start, date_interval_create_from_date_string($months.' month'));
date_sub($date_end, date_interval_create_from_date_string($months.' month')); date_sub($date_end, date_interval_create_from_date_string($months.' month'));
} }
# date_sub($date_start, date_interval_create_from_date_string('1 month')); # date_sub($date_start, date_interval_create_from_date_string('1 month'));
date_sub($date_end, date_interval_create_from_date_string('1 day')); date_sub($date_end, date_interval_create_from_date_string('1 day'));

View File

@@ -37,15 +37,13 @@ $config['unflatten'] = "/usr/bin/unflatten";
$config['neato'] = "/usr/bin/neato"; $config['neato'] = "/usr/bin/neato";
$config['sfdp'] = "/usr/bin/sfdp"; $config['sfdp'] = "/usr/bin/sfdp";
### Memcached - Keep immediate statistics ### Memcached - Keep immediate statistics
$config['memcached']['enable'] = FALSE; $config['memcached']['enable'] = FALSE;
$config['memcached']['host'] = "localhost"; $config['memcached']['host'] = "localhost";
$config['memcached']['port'] = 11211; $config['memcached']['port'] = 11211;
$config['slow_statistics'] = TRUE; ### THIS WILL CHANGE TO FALSE IN FUTURE $config['slow_statistics'] = TRUE; ### THIS WILL CHANGE TO FALSE IN FUTURE
### RRDCacheD - Make sure it can write to your RRD dir! ### RRDCacheD - Make sure it can write to your RRD dir!
@@ -57,7 +55,7 @@ if (isset($_SERVER["SERVER_NAME"]) && isset($_SERVER["SERVER_PORT"]))
{ {
if (strpos($_SERVER["SERVER_NAME"] , ":")) if (strpos($_SERVER["SERVER_NAME"] , ":"))
{ {
# Litteral IPv6 # Literal IPv6
$config['base_url'] = "http://[" . $_SERVER["SERVER_NAME"] ."]:".$_SERVER["SERVER_PORT"]."/"; $config['base_url'] = "http://[" . $_SERVER["SERVER_NAME"] ."]:".$_SERVER["SERVER_PORT"]."/";
} }
else else
@@ -98,12 +96,12 @@ $config['snmp']['transports'] = array('udp', 'udp6', 'tcp', 'tcp6');
### Autodiscovery Settings ### Autodiscovery Settings
$config['autodiscovery']['xdp'] = true; ## Autodiscover hosts via discovery protocols $config['autodiscovery']['xdp'] = TRUE; ## Autodiscover hosts via discovery protocols
$config['autodiscovery']['ospf'] = true; ## Autodiscover hosts via OSPF $config['autodiscovery']['ospf'] = TRUE; ## Autodiscover hosts via OSPF
$config['autodiscovery']['bgp'] = true; ## Autodiscover hosts via BGP $config['autodiscovery']['bgp'] = TRUE; ## Autodiscover hosts via BGP
$config['autodiscovery']['snmpscan'] = true; ## autodiscover hosts via SNMP scanning $config['autodiscovery']['snmpscan'] = TRUE; ## autodiscover hosts via SNMP scanning
$config['discover_services'] = false; ## Autodiscover services via SNMP on devices of type "server" $config['discover_services'] = FALSE; ## Autodiscover services via SNMP on devices of type "server"
### Alerting Settings ### Alerting Settings
@@ -111,7 +109,7 @@ $config['alerts']['email']['default'] = NULL; ## Default alert recipient
$config['alerts']['email']['default_only'] = FALSE; ## Only use default recipient $config['alerts']['email']['default_only'] = FALSE; ## Only use default recipient
$config['alerts']['email']['enable'] = TRUE; ## Enable email alerts $config['alerts']['email']['enable'] = TRUE; ## Enable email alerts
$config['alerts']['bgp']['whitelist'] = NULL; ## Populate as an array() with ASNs to alert on. $config['alerts']['bgp']['whitelist'] = NULL; ## Populate as an array() with ASNs to alert on.
$config['alerts']['port']['ifdown'] = FALSE; ## Generate alerts for ports that go down $config['alerts']['port']['ifdown'] = FALSE; ## Generate alerts for ports that go down
### Port bandwidth threshold percentage %age utilisation above this will cause an alert ### Port bandwidth threshold percentage %age utilisation above this will cause an alert
@@ -160,11 +158,11 @@ $config['graph_colours']['default'] = $config['graph_colours']['blues'];
### Device page options ### Device page options
$config['show_overview_tab'] = true; $config['show_overview_tab'] = TRUE;
### The device overview page options ### The device overview page options
$config['overview_show_sysDescr'] = true; $config['overview_show_sysDescr'] = TRUE;
### Enable version checker & stats ### Enable version checker & stats
@@ -296,9 +294,9 @@ $config['irc_chan'][] = "#observium";
### Authentication ### Authentication
$config['allow_unauth_graphs'] = 0; ## Allow graphs to be viewed by anyone $config['allow_unauth_graphs'] = 0; # Allow graphs to be viewed by anyone
$config['allow_unauth_graphs_cidr'] = array(); # Allow graphs to be viewed without authorisation from certain IP ranges $config['allow_unauth_graphs_cidr'] = array(); # Allow graphs to be viewed without authorisation from certain IP ranges
$config['auth_mechanism'] = "mysql"; # Available mechanisms: mysql (default), ldap, http-auth $config['auth_mechanism'] = "mysql"; # Available mechanisms: mysql (default), ldap, http-auth
### Sensors ### Sensors
@@ -372,7 +370,6 @@ $config['astext'][65333] = "Cymru Bogon Feed";
### Warnings on front page ### Warnings on front page
$config['warn']['ifdown'] = TRUE; ## Show down interfaces $config['warn']['ifdown'] = TRUE; ## Show down interfaces
## List of poller modules. Need to be in the array to be ## List of poller modules. Need to be in the array to be
## considered for execution. ## considered for execution.
@@ -401,7 +398,7 @@ $config['poller_modules']['cisco-cef'] = 1;
$config['poller_modules']['cisco-mac-accounting'] = 1; $config['poller_modules']['cisco-mac-accounting'] = 1;
$config['poller_modules']['cipsec-tunnels'] = 1; $config['poller_modules']['cipsec-tunnels'] = 1;
$config['poller_modules']['cisco-ace-loadbalancer'] = 1; $config['poller_modules']['cisco-ace-loadbalancer'] = 1;
$config['poller_modules']['cisco-ace-serverfarms'] = 1; $config['poller_modules']['cisco-ace-serverfarms'] = 1;
$config['poller_modules']['netscaler-vsvr'] = 1; $config['poller_modules']['netscaler-vsvr'] = 1;
$config['poller_modules']['entity-physical'] = 1; $config['poller_modules']['entity-physical'] = 1;
$config['poller_modules']['unix-agent'] = 0; $config['poller_modules']['unix-agent'] = 0;
@@ -434,7 +431,6 @@ $config['discovery_modules']['toner'] = 1;
$config['discovery_modules']['ucd-diskio'] = 1; $config['discovery_modules']['ucd-diskio'] = 1;
$config['discovery_modules']['services'] = 1; $config['discovery_modules']['services'] = 1;
$config['modules_compat']['rfc1628']['liebert'] = 1; $config['modules_compat']['rfc1628']['liebert'] = 1;
$config['modules_compat']['rfc1628']['netmanplus'] = 1; $config['modules_compat']['rfc1628']['netmanplus'] = 1;
$config['modules_compat']['rfc1628']['deltaups'] = 1; $config['modules_compat']['rfc1628']['deltaups'] = 1;

View File

@@ -575,6 +575,7 @@ function include_dir($dir, $regex = "")
if (filetype($config['install_dir'] . '/' . $dir . '/' . $file) == 'file' && preg_match($regex, $file)) if (filetype($config['install_dir'] . '/' . $dir . '/' . $file) == 'file' && preg_match($regex, $file))
{ {
if ($debug) { echo("Including: " . $config['install_dir'] . '/' . $dir . '/' . $file . "\n"); } if ($debug) { echo("Including: " . $config['install_dir'] . '/' . $dir . '/' . $file . "\n"); }
include($config['install_dir'] . '/' . $dir . '/' . $file); include($config['install_dir'] . '/' . $dir . '/' . $file);
} }
} }

View File

@@ -14,6 +14,7 @@
if (filetype($config['install_dir'] . '/' . $include_dir . '/' . $file) == 'file' && preg_match($include_dir_regexp, $file)) if (filetype($config['install_dir'] . '/' . $include_dir . '/' . $file) == 'file' && preg_match($include_dir_regexp, $file))
{ {
if ($debug) { echo("Including: " . $config['install_dir'] . '/' . $include_dir . '/' . $file . "\n"); } if ($debug) { echo("Including: " . $config['install_dir'] . '/' . $include_dir . '/' . $file . "\n"); }
include($config['install_dir'] . '/' . $include_dir . '/' . $file); include($config['install_dir'] . '/' . $include_dir . '/' . $file);
} }
} }

View File

@@ -68,8 +68,8 @@ function rrdtool_pipe_open(&$rrd_process, &$rrd_pipes)
function rrdtool_pipe_close(&$rrd_process, &$rrd_pipes) function rrdtool_pipe_close(&$rrd_process, &$rrd_pipes)
{ {
global $debug; global $debug;
if ($debug) if ($debug)
{ {
echo stream_get_contents($rrd_pipes[1]); echo stream_get_contents($rrd_pipes[1]);

View File

@@ -33,7 +33,6 @@ $config['os'][$os]['over'][1]['text'] = "Processor Usage";
$config['os'][$os]['over'][2]['graph'] = "device_mempool"; $config['os'][$os]['over'][2]['graph'] = "device_mempool";
$config['os'][$os]['over'][2]['text'] = "Memory Usage"; $config['os'][$os]['over'][2]['text'] = "Memory Usage";
### Linux-based OSes here please. ### Linux-based OSes here please.
$os = "linux"; $os = "linux";
@@ -288,11 +287,11 @@ $config['os'][$os]['over'][2]['text'] = "Memory Usage";
$os = "ciscosb"; $os = "ciscosb";
$config['os'][$os]['group'] = "cisco"; $config['os'][$os]['group'] = "cisco";
$config['os'][$os]['text'] = "Cisco Small Business"; $config['os'][$os]['text'] = "Cisco Small Business";
$config['os'][$os]['ifname'] = 1; $config['os'][$os]['ifname'] = 1;
$config['os'][$os]['type'] = "network"; $config['os'][$os]['type'] = "network";
$config['os'][$os]['icon'] = "linksys"; $config['os'][$os]['icon'] = "linksys";
$config['os'][$os]['over'][0]['graph'] = "device_bits"; $config['os'][$os]['over'][0]['graph'] = "device_bits";
$config['os'][$os]['over'][0]['text'] = "Device Traffic"; $config['os'][$os]['over'][0]['text'] = "Device Traffic";
## Huawei ## Huawei
@@ -389,7 +388,6 @@ $config['os'][$os]['icon'] = "brocade";
$config['os'][$os]['over'][0]['graph'] = "device_bits"; $config['os'][$os]['over'][0]['graph'] = "device_bits";
$config['os'][$os]['over'][0]['text'] = "Device Traffic"; $config['os'][$os]['over'][0]['text'] = "Device Traffic";
$os = "extremeware"; $os = "extremeware";
$config['os'][$os]['text'] = "Extremeware"; $config['os'][$os]['text'] = "Extremeware";
$config['os'][$os]['type'] = "network"; $config['os'][$os]['type'] = "network";
@@ -457,7 +455,6 @@ $config['os'][$os]['over'][0]['text'] = "Device Traffic";
$config['os'][$os]['over'][1]['graph'] = "device_processor"; $config['os'][$os]['over'][1]['graph'] = "device_processor";
$config['os'][$os]['over'][1]['text'] = "CPU Usage"; $config['os'][$os]['over'][1]['text'] = "CPU Usage";
$os = "proxim"; $os = "proxim";
$config['os'][$os]['text'] = "Proxim"; $config['os'][$os]['text'] = "Proxim";
$config['os'][$os]['type'] = "network"; $config['os'][$os]['type'] = "network";
@@ -1126,11 +1123,11 @@ if (!$observium_link)
} }
$observium_db = mysql_select_db($config['db_name'], $observium_link); $observium_db = mysql_select_db($config['db_name'], $observium_link);
if($config['memcached']['enable']) if($config['memcached']['enable'])
{ {
$memcache = new Memcached(); $memcache = new Memcached();
$memcache->addServer($config['memcached']['host'], $config['memcached']['port']); $memcache->addServer($config['memcached']['host'], $config['memcached']['port']);
if($debug) { print_r($memcache->getStats()); } if ($debug) { print_r($memcache->getStats()); }
} }
# Set some times needed by loads of scripts (it's dynamic, so we do it here!) # Set some times needed by loads of scripts (it's dynamic, so we do it here!)

View File

@@ -6,16 +6,20 @@
# $device_id_ip = @dbFetchCell("SELECT device_id FROM ipv4_addresses AS A, ports AS I WHERE A.ipv4_address = '" . $entry['host']."' AND I.interface_id = A.interface_id"); # $device_id_ip = @dbFetchCell("SELECT device_id FROM ipv4_addresses AS A, ports AS I WHERE A.ipv4_address = '" . $entry['host']."' AND I.interface_id = A.interface_id");
function get_cache($host, $value) { function get_cache($host, $value)
{
global $dev_cache; global $dev_cache;
if (!isset($dev_cache[$host][$value])) { if (!isset($dev_cache[$host][$value]))
switch($value) { {
switch($value)
{
case 'device_id': case 'device_id':
//Try by hostname // Try by hostname
$dev_cache[$host]['device_id'] = dbFetchCell('SELECT `device_id` FROM devices WHERE `hostname` = ? OR `sysName` = ?', array($host, $host)); $dev_cache[$host]['device_id'] = dbFetchCell('SELECT `device_id` FROM devices WHERE `hostname` = ? OR `sysName` = ?', array($host, $host));
//If failed, try by IP // If failed, try by IP
if (!is_numeric($dev_cache[$host]['device_id'])) { if (!is_numeric($dev_cache[$host]['device_id']))
{
$dev_cache[$host]['device_id'] = dbFetchCell('SELECT `device_id` FROM `ipv4_addresses` AS A, `ports` AS I WHERE A.ipv4_address = ? AND I.interface_id = A.interface_id', array($host)); $dev_cache[$host]['device_id'] = dbFetchCell('SELECT `device_id` FROM `ipv4_addresses` AS A, `ports` AS I WHERE A.ipv4_address = ? AND I.interface_id = A.interface_id', array($host));
} }
break; break;
@@ -32,9 +36,9 @@ function get_cache($host, $value) {
return $dev_cache[$host][$value]; return $dev_cache[$host][$value];
} }
function process_syslog ($entry, $update) { function process_syslog($entry, $update)
global $config; {
global $dev_cache; global $config, $dev_cache;
foreach ($config['syslog_filter'] as $bi) foreach ($config['syslog_filter'] as $bi)
{ {
@@ -47,10 +51,12 @@ function process_syslog ($entry, $update) {
} }
$entry['device_id'] = get_cache($entry['host'], 'device_id'); $entry['device_id'] = get_cache($entry['host'], 'device_id');
if ($entry['device_id']) { if ($entry['device_id'])
{
$os = get_cache($entry['host'], 'os'); $os = get_cache($entry['host'], 'os');
if (in_array($os, array('ios', 'iosxe', 'catos'))) { if (in_array($os, array('ios', 'iosxe', 'catos')))
{
$matches = array(); $matches = array();
# if (preg_match('#%(?P<program>.*):( ?)(?P<msg>.*)#', $entry['msg'], $matches)) { # if (preg_match('#%(?P<program>.*):( ?)(?P<msg>.*)#', $entry['msg'], $matches)) {
# $entry['msg'] = $matches['msg']; # $entry['msg'] = $matches['msg'];
@@ -87,7 +93,7 @@ function process_syslog ($entry, $update) {
if (!$entry['msg']) { $entry['msg'] = $entry['program']; unset ($entry['program']); } if (!$entry['msg']) { $entry['msg'] = $entry['program']; unset ($entry['program']); }
} elseif($os == 'linux' and get_cache($entry['host'], 'version') == 'Point') { } elseif($os == 'linux' and get_cache($entry['host'], 'version') == 'Point') {
//Cisco WAP200 and similar // Cisco WAP200 and similar
$matches = array(); $matches = array();
if (preg_match('#Log: \[(?P<program>.*)\] - (?P<msg>.*)#', $entry['msg'], $matches)) { if (preg_match('#Log: \[(?P<program>.*)\] - (?P<msg>.*)#', $entry['msg'], $matches)) {
$entry['msg'] = $matches['msg']; $entry['msg'] = $matches['msg'];
@@ -97,41 +103,47 @@ function process_syslog ($entry, $update) {
} elseif($os == 'linux') { } elseif($os == 'linux') {
$matches = array(); $matches = array();
//User_CommonName/123.213.132.231:39872 VERIFY OK: depth=1, /C=PL/ST=Malopolska/O=VLO/CN=v-lo.krakow.pl/emailAddress=root@v-lo.krakow.pl // User_CommonName/123.213.132.231:39872 VERIFY OK: depth=1, /C=PL/ST=Malopolska/O=VLO/CN=v-lo.krakow.pl/emailAddress=root@v-lo.krakow.pl
if ($entry['facility'] == 'daemon' and preg_match('#/([0-9]{1,3}\.) {3}[0-9]{1,3}:[0-9]{4,} ([A-Z]([A-Za-z])+( ?)) {2,}:#', $entry['msg'])) { if ($entry['facility'] == 'daemon' and preg_match('#/([0-9]{1,3}\.) {3}[0-9]{1,3}:[0-9]{4,} ([A-Z]([A-Za-z])+( ?)) {2,}:#', $entry['msg']))
{
$entry['program'] = 'OpenVPN'; $entry['program'] = 'OpenVPN';
} }
//pop3-login: Login: user=<username>, method=PLAIN, rip=123.213.132.231, lip=123.213.132.231, TLS // pop3-login: Login: user=<username>, method=PLAIN, rip=123.213.132.231, lip=123.213.132.231, TLS
//POP3(username): Disconnected: Logged out top=0/0, retr=0/0, del=0/1, size=2802 // POP3(username): Disconnected: Logged out top=0/0, retr=0/0, del=0/1, size=2802
elseif($entry['facility'] == 'mail' and preg_match('#^(((pop3|imap)\-login)|((POP3|IMAP)\(.*\))):', $entry['msg'])) { elseif($entry['facility'] == 'mail' and preg_match('#^(((pop3|imap)\-login)|((POP3|IMAP)\(.*\))):', $entry['msg']))
{
$entry['program'] = 'Dovecot'; $entry['program'] = 'Dovecot';
} }
//pam_krb5(sshd:auth): authentication failure; logname=root uid=0 euid=0 tty=ssh ruser= rhost=123.213.132.231 // pam_krb5(sshd:auth): authentication failure; logname=root uid=0 euid=0 tty=ssh ruser= rhost=123.213.132.231
//pam_krb5[sshd:auth]: authentication failure; logname=root uid=0 euid=0 tty=ssh ruser= rhost=123.213.132.231 // pam_krb5[sshd:auth]: authentication failure; logname=root uid=0 euid=0 tty=ssh ruser= rhost=123.213.132.231
elseif(preg_match('#^(?P<program>(.*((\(|\[).*(\)|\])))):(?P<msg>.*)$#', $entry['msg'], $matches)) { elseif(preg_match('#^(?P<program>(.*((\(|\[).*(\)|\])))):(?P<msg>.*)$#', $entry['msg'], $matches))
{
$entry['msg'] = $matches['msg']; $entry['msg'] = $matches['msg'];
$entry['program'] = $matches['program']; $entry['program'] = $matches['program'];
} }
//SYSLOG CONNECTION BROKEN; FD='6', SERVER='AF_INET(123.213.132.231:514)', time_reopen='60' // SYSLOG CONNECTION BROKEN; FD='6', SERVER='AF_INET(123.213.132.231:514)', time_reopen='60'
//pam_krb5: authentication failure; logname=root uid=0 euid=0 tty=ssh ruser= rhost=123.213.132.231 // pam_krb5: authentication failure; logname=root uid=0 euid=0 tty=ssh ruser= rhost=123.213.132.231
## Disabled because broke this: ## Disabled because broke this:
//diskio.c: don't know how to handle 10 request // diskio.c: don't know how to handle 10 request
#elseif($pos = strpos($entry['msg'], ';') or $pos = strpos($entry['msg'], ':')) { #elseif($pos = strpos($entry['msg'], ';') or $pos = strpos($entry['msg'], ':')) {
# $entry['program'] = substr($entry['msg'], 0, $pos); # $entry['program'] = substr($entry['msg'], 0, $pos);
# $entry['msg'] = substr($entry['msg'], $pos+1); # $entry['msg'] = substr($entry['msg'], $pos+1);
#} #}
//fallback, better than nothing... // fallback, better than nothing...
elseif(empty($entry['program']) and !empty($entry['facility'])) { elseif(empty($entry['program']) and !empty($entry['facility']))
{
$entry['program'] = $entry['facility']; $entry['program'] = $entry['facility'];
} }
unset($matches); unset($matches);
} }
if (!isset($entry['program'])) { if (!isset($entry['program']))
{
$entry['program'] = $entry['msg']; $entry['program'] = $entry['msg'];
unset($entry['msg']); unset($entry['msg']);
} }
$entry['program'] = strtoupper($entry['program']); $entry['program'] = strtoupper($entry['program']);
array_walk($entry, 'trim'); array_walk($entry, 'trim');