Request failed:

Status Warnings and Notifications

Oops! Something went wrong.

Oops! Something went wrong.

Hamster Panic

Class 'IPLib\Factory' not found in /var/observium/includes/entities/ip-address.inc.php:420

#0: (unknown function) called at [/var/observium/includes/entities/ip-address.inc.php:420]

415: return $array;
416: }
417:
418: // Split ip and netmask is passed
419: [ $ip, $prefix ] = explode('/', $address, 2);
420: $addr = \IPLib\Factory::parseAddressString($ip);
421:
422: if (!$addr) {
423: // Invalid IP address, return empty string for consistency
424: print_debug("DEBUG: ip_compress() requested for incorrect IP address: $address.");
425: return '';

#1: ip_compress called at [/var/observium/includes/rewrites.inc.php:444]

439: $peer['peer_local_class'] = "";
440: $peer['peer_local_type'] = "public";
441: }
442:
443: // Format (compress) the local/remote IPs if they're IPv6
444: $peer['human_localip'] = ip_compress($peer['bgpPeerLocalAddr']);
445: $peer['human_remoteip'] = ip_compress($peer['bgpPeerRemoteAddr']);
446:
447: // Format ASN as asdot if configured
448: $peer['human_local_as'] = $config['web_show_bgp_asdot'] ? bgp_asplain_to_asdot($peer['local_as']) : $peer['local_as'];
449: $peer['human_remote_as'] = $config['web_show_bgp_asdot'] ? bgp_asplain_to_asdot($peer['bgpPeerRemoteAs']) : $peer['bgpPeerRemoteAs'];

#2: humanize_bgp called at [/var/observium/html/includes/print/status.inc.php:336]

331: $query .= ' LEFT JOIN `devices` USING(`device_id`)';
332: $query .= generate_where_clause($where_array, $query_device_permitted);
333: $query .= ' ORDER BY `hostname` ASC';
334:
335: foreach (dbFetchRows($query) as $peer) {
336: humanize_bgp($peer);
337:
338: if (isset($options['bgp_peer_name']) && $options['bgp_peer_name'] === "peer_dns" &&
339: !safe_empty($peer['reverse_dns'])) {
340: $peer_link = generate_entity_link("bgp_peer", $peer, short_hostname($peer['reverse_dns']));
341: } else {

#3: get_status_array called at [/var/observium/html/includes/print/status.inc.php:134]

129:
130: }
131:
132: function generate_status_table($options, $print = FALSE) {
133:
134: $status_array = get_status_array($options);
135: $status_array = array_sort($status_array, 'sev', 'SORT_DESC');
136: $string = '<table style="" class="table table-striped table-hover table-condensed">' . PHP_EOL;
137:
138: foreach ($status_array as $entry) {
139: if ($entry['sev'] > 51) {

#4: generate_status_table called at [/var/observium/html/ajax/widget.php:226]

221: } else {
222: // Fallback to global configuration
223: $status_options = $config['frontpage']['device_status'];
224: }
225:
226: echo generate_status_table($status_options);
227: echo generate_box_close();
228:
229: break;
230:
231: case "status_donuts":

#5: print_dash_mod called at [/var/observium/html/ajax/widget.php:36]

31: if (!$widget) { echo 'not found'; exit; }
32:
33: $widget['height'] = is_numeric($_POST['height']) ? $_POST['height'] : 3;
34: $widget['width'] = is_numeric($_POST['width']) ? $_POST['width'] : 4;
35:
36: print_dash_mod($widget);
37:
38: function print_dash_mod($mod) {
39:
40: global $config, $cache;
41:
Request failed:

Alert Status

Oops! Something went wrong.

Oops! Something went wrong.

Hamster Panic

Class 'IPLib\Factory' not found in /var/observium/includes/entities/ip-address.inc.php:420

#0: (unknown function) called at [/var/observium/includes/entities/ip-address.inc.php:420]

415: return $array;
416: }
417:
418: // Split ip and netmask is passed
419: [ $ip, $prefix ] = explode('/', $address, 2);
420: $addr = \IPLib\Factory::parseAddressString($ip);
421:
422: if (!$addr) {
423: // Invalid IP address, return empty string for consistency
424: print_debug("DEBUG: ip_compress() requested for incorrect IP address: $address.");
425: return '';

#1: ip_compress called at [/var/observium/includes/rewrites.inc.php:444]

439: $peer['peer_local_class'] = "";
440: $peer['peer_local_type'] = "public";
441: }
442:
443: // Format (compress) the local/remote IPs if they're IPv6
444: $peer['human_localip'] = ip_compress($peer['bgpPeerLocalAddr']);
445: $peer['human_remoteip'] = ip_compress($peer['bgpPeerRemoteAddr']);
446:
447: // Format ASN as asdot if configured
448: $peer['human_local_as'] = $config['web_show_bgp_asdot'] ? bgp_asplain_to_asdot($peer['local_as']) : $peer['local_as'];
449: $peer['human_remote_as'] = $config['web_show_bgp_asdot'] ? bgp_asplain_to_asdot($peer['bgpPeerRemoteAs']) : $peer['bgpPeerRemoteAs'];

#2: humanize_bgp called at [/var/observium/includes/entities.inc.php:821]

816: if (function_exists('humanize_' . $entity_type)) {
817: $do = 'humanize_' . $entity_type;
818: $do($entity);
819: } elseif (isset($translate['humanize_function']) && function_exists($translate['humanize_function'])) {
820: $do = $translate['humanize_function'];
821: $do($entity);
822: }
823:
824: entity_rewrite($entity_type, $entity);
825: $cache[$entity_type][$entity_id] = $entity;
826: return $entity;

#3: get_entity_by_id_cache called at [/var/observium/html/includes/print/alert.inc.php:283]

278:
279: // Process the alert entry, generating colours and classes from the data
280: humanize_alert_entry($alert);
281:
282: // Get the entity array using the cache
283: $entity = get_entity_by_id_cache($alert['entity_type'], $alert['entity_id']);
284:
285: $entity_type = entity_type_translate_array($alert['entity_type']);
286:
287: // Get the device array using the cache
288: $device = device_by_id_cache($alert['device_id']);

#4: print_alert_table called at [/var/observium/html/ajax/widget.php:135]

130: // Default to failed status if no status specified
131: if (!isset($alert_vars['status'])) {
132: $alert_vars['status'] = 'failed';
133: }
134:
135: print_alert_table($alert_vars);
136: echo ' </div>';
137: echo ' </div>';
138: echo '</div>';
139:
140: break;

#5: print_dash_mod called at [/var/observium/html/ajax/widget.php:36]

31: if (!$widget) { echo 'not found'; exit; }
32:
33: $widget['height'] = is_numeric($_POST['height']) ? $_POST['height'] : 3;
34: $widget['width'] = is_numeric($_POST['width']) ? $_POST['width'] : 4;
35:
36: print_dash_mod($widget);
37:
38: function print_dash_mod($mod) {
39:
40: global $config, $cache;
41:
Request failed:

Status Warnings and Notifications

Oops! Something went wrong.

Oops! Something went wrong.

Hamster Panic

Class 'IPLib\Factory' not found in /var/observium/includes/entities/ip-address.inc.php:420

#0: (unknown function) called at [/var/observium/includes/entities/ip-address.inc.php:420]

415: return $array;
416: }
417:
418: // Split ip and netmask is passed
419: [ $ip, $prefix ] = explode('/', $address, 2);
420: $addr = \IPLib\Factory::parseAddressString($ip);
421:
422: if (!$addr) {
423: // Invalid IP address, return empty string for consistency
424: print_debug("DEBUG: ip_compress() requested for incorrect IP address: $address.");
425: return '';

#1: ip_compress called at [/var/observium/includes/rewrites.inc.php:444]

439: $peer['peer_local_class'] = "";
440: $peer['peer_local_type'] = "public";
441: }
442:
443: // Format (compress) the local/remote IPs if they're IPv6
444: $peer['human_localip'] = ip_compress($peer['bgpPeerLocalAddr']);
445: $peer['human_remoteip'] = ip_compress($peer['bgpPeerRemoteAddr']);
446:
447: // Format ASN as asdot if configured
448: $peer['human_local_as'] = $config['web_show_bgp_asdot'] ? bgp_asplain_to_asdot($peer['local_as']) : $peer['local_as'];
449: $peer['human_remote_as'] = $config['web_show_bgp_asdot'] ? bgp_asplain_to_asdot($peer['bgpPeerRemoteAs']) : $peer['bgpPeerRemoteAs'];

#2: humanize_bgp called at [/var/observium/html/includes/print/status.inc.php:336]

331: $query .= ' LEFT JOIN `devices` USING(`device_id`)';
332: $query .= generate_where_clause($where_array, $query_device_permitted);
333: $query .= ' ORDER BY `hostname` ASC';
334:
335: foreach (dbFetchRows($query) as $peer) {
336: humanize_bgp($peer);
337:
338: if (isset($options['bgp_peer_name']) && $options['bgp_peer_name'] === "peer_dns" &&
339: !safe_empty($peer['reverse_dns'])) {
340: $peer_link = generate_entity_link("bgp_peer", $peer, short_hostname($peer['reverse_dns']));
341: } else {

#3: get_status_array called at [/var/observium/html/includes/print/status.inc.php:134]

129:
130: }
131:
132: function generate_status_table($options, $print = FALSE) {
133:
134: $status_array = get_status_array($options);
135: $status_array = array_sort($status_array, 'sev', 'SORT_DESC');
136: $string = '<table style="" class="table table-striped table-hover table-condensed">' . PHP_EOL;
137:
138: foreach ($status_array as $entry) {
139: if ($entry['sev'] > 51) {

#4: generate_status_table called at [/var/observium/html/ajax/widget.php:226]

221: } else {
222: // Fallback to global configuration
223: $status_options = $config['frontpage']['device_status'];
224: }
225:
226: echo generate_status_table($status_options);
227: echo generate_box_close();
228:
229: break;
230:
231: case "status_donuts":

#5: print_dash_mod called at [/var/observium/html/ajax/widget.php:36]

31: if (!$widget) { echo 'not found'; exit; }
32:
33: $widget['height'] = is_numeric($_POST['height']) ? $_POST['height'] : 3;
34: $widget['width'] = is_numeric($_POST['width']) ? $_POST['width'] : 4;
35:
36: print_dash_mod($widget);
37:
38: function print_dash_mod($mod) {
39:
40: global $config, $cache;
41:
Request failed:

Alert Status

Device Entity Alert Status Checked Changed Alerted
Oops! Something went wrong.

Oops! Something went wrong.

Hamster Panic

Class 'IPLib\Factory' not found in /var/observium/includes/entities/ip-address.inc.php:420

#0: (unknown function) called at [/var/observium/includes/entities/ip-address.inc.php:420]

415: return $array;
416: }
417:
418: // Split ip and netmask is passed
419: [ $ip, $prefix ] = explode('/', $address, 2);
420: $addr = \IPLib\Factory::parseAddressString($ip);
421:
422: if (!$addr) {
423: // Invalid IP address, return empty string for consistency
424: print_debug("DEBUG: ip_compress() requested for incorrect IP address: $address.");
425: return '';

#1: ip_compress called at [/var/observium/includes/rewrites.inc.php:444]

439: $peer['peer_local_class'] = "";
440: $peer['peer_local_type'] = "public";
441: }
442:
443: // Format (compress) the local/remote IPs if they're IPv6
444: $peer['human_localip'] = ip_compress($peer['bgpPeerLocalAddr']);
445: $peer['human_remoteip'] = ip_compress($peer['bgpPeerRemoteAddr']);
446:
447: // Format ASN as asdot if configured
448: $peer['human_local_as'] = $config['web_show_bgp_asdot'] ? bgp_asplain_to_asdot($peer['local_as']) : $peer['local_as'];
449: $peer['human_remote_as'] = $config['web_show_bgp_asdot'] ? bgp_asplain_to_asdot($peer['bgpPeerRemoteAs']) : $peer['bgpPeerRemoteAs'];

#2: humanize_bgp called at [/var/observium/includes/entities.inc.php:821]

816: if (function_exists('humanize_' . $entity_type)) {
817: $do = 'humanize_' . $entity_type;
818: $do($entity);
819: } elseif (isset($translate['humanize_function']) && function_exists($translate['humanize_function'])) {
820: $do = $translate['humanize_function'];
821: $do($entity);
822: }
823:
824: entity_rewrite($entity_type, $entity);
825: $cache[$entity_type][$entity_id] = $entity;
826: return $entity;

#3: get_entity_by_id_cache called at [/var/observium/html/includes/print/alert.inc.php:283]

278:
279: // Process the alert entry, generating colours and classes from the data
280: humanize_alert_entry($alert);
281:
282: // Get the entity array using the cache
283: $entity = get_entity_by_id_cache($alert['entity_type'], $alert['entity_id']);
284:
285: $entity_type = entity_type_translate_array($alert['entity_type']);
286:
287: // Get the device array using the cache
288: $device = device_by_id_cache($alert['device_id']);

#4: print_alert_table called at [/var/observium/html/ajax/widget.php:135]

130: // Default to failed status if no status specified
131: if (!isset($alert_vars['status'])) {
132: $alert_vars['status'] = 'failed';
133: }
134:
135: print_alert_table($alert_vars);
136: echo ' </div>';
137: echo ' </div>';
138: echo '</div&
Device Entity Alert Status Checked Changed Alerted