DEBUG! CMD[/usr/bin/svn info /opt/observium]  CMD EXITCODE[0] CMD RUNTIME[0.0081s] CMD EXITDELAY[5ms] STDOUT[ Path: . Working Copy Root Path: /opt/observium URL: https://svn.observium.org/svn/observium/branches/stable Relative URL: ^/observium/branches/stable Repository Root: https://svn.observium.org/svn Repository UUID: 61d68cd4-352d-0410-923a-c4978735b2b8 Revision: 13675 Node Kind: directory Schedule: normal Last Changed Author: adama Last Changed Rev: 13606 Last Changed Date: 2024-08-02 22:23:01 +0200 (Fri, 02 Aug 2024) ] DEFINITIONS Time : 0.100525 ms DEFINITIONS Memory: 16.6MB SQL[SELECT * FROM `observium_attribs`] SQL RUNTIME[0.00026989s]  SQL[SELECT @@SESSION.sql_mode;] SQL RUNTIME[0.00010896s]  SQL[SET SESSION `sql_mode` = 'NO_ENGINE_SUBSTITUTION'] SQL RUNTIME[7.2E-5s] DB mode(s) disabled: STRICT_TRANS_TABLES, ONLY_FULL_GROUP_BY, NO_ZERO_DATE, NO_ZERO_IN_DATE, ERROR_FOR_DIVISION_BY_ZERO SQL[SELECT TIMEDIFF(NOW(), UTC_TIMESTAMP);] SQL RUNTIME[8.416E-5s]  SQL[SELECT * FROM `config`] SQL RUNTIME[0.00013089s]  CMD[/bin/hostname -f]  CMD EXITCODE[0] CMD RUNTIME[0.0028s] STDOUT[ observium ] SQL[SELECT EXISTS (SELECT 1 FROM `pollers`)] SQL RUNTIME[0.00016809s]  ___ _ _ / _ \ | |__ ___ ___ _ __ __ __(_) _ _ _ __ ___ | | | || '_ \ / __| / _ \| '__|\ \ / /| || | | || '_ ` _ \ | |_| || |_) |\__ \| __/| | \ V / | || |_| || | | | | | \___/ |_.__/ |___/ \___||_| \_/ |_| \__,_||_| |_| |_| Observium Professional 24.8.13606 https://www.observium.org   CMD[/opt/observium/scripts/distro]  CMD EXITCODE[0] CMD RUNTIME[0.0125s] STDOUT[ Linux|5.15.0-122-generic|amd64|Ubuntu|22.04|vmware| ] CMD[/usr/bin/env python --version 2>&1]  CMD EXITCODE[0] CMD RUNTIME[0.0027s] STDOUT[ Python 3.10.12 ] SQL[SELECT VERSION();] SQL RUNTIME[0.00014591s]  CMD[/usr/bin/snmpget --version 2>&1]  CMD EXITCODE[0] CMD RUNTIME[0.0029s] STDOUT[ NET-SNMP version: 5.9.1 ] CMD[/usr/bin/rrdtool --version | head -n1]  CMD EXITCODE[0] CMD RUNTIME[0.0077s] STDOUT[ RRDtool 1.7.2 Copyright by Tobias Oetiker ] CMD[/usr/bin/fping -v 2>&1]  CMD EXITCODE[0] CMD RUNTIME[0.002s] STDOUT[ /usr/bin/fping: Version 5.1 ] CMD[/usr/sbin/apache2 -v | awk '/Server version:/ {print $3}']  CMD EXITCODE[0] CMD RUNTIME[0.0176s] STDOUT[ Apache/2.4.52 ] SQL[SELECT @@SESSION.sql_mode;] SQL RUNTIME[0.00015688s]  SQL[SHOW VARIABLES LIKE 'log_bin'] SQL RUNTIME[0.00312781s]  SQL[SHOW VARIABLES LIKE 'character_set_connection'] SQL RUNTIME[0.0012691s]  ##### Software versions #####   o OS  Linux 5.15.0-122-generic [amd64] (Ubuntu 22.04)  o Apache  2.4.52  o PHP  8.1.2-1ubuntu2.19 (OPcache: DISABLED)  o Python  3.10.12  o MySQL  8.0.39-0ubuntu0.22.04.1 (extension: mysqli 8.1.2-1ubuntu2.19)  o SNMP  NET-SNMP 5.9.1  o RRDtool  1.7.2  o Fping  5.1 (IPv4 and IPv6)  o Fetch  PHP fetch ##### Memory Limit #####   o PHP  Unlimited ##### DB info #####   o DB schema  493  o MySQL binlog  ON  o MySQL mode  NO_ENGINE_SUBSTITUTION ##### Charset info #####   o PHP  UTF-8  o MySQL  utf8mb3 ##### Timezones info #####   o Date  Tuesday, 15-Oct-24 12:47:36 CEST  o PHP  +02:00  o MySQL  +02:00 SQL[SELECT * FROM `alerts_maint` WHERE `maint_start` < '1728989256' AND `maint_end` > '1728989256'] SQL RUNTIME[0.00021911s] ##### Starting polling run at 2024-10-15 12:47:36 #####   SQL[SELECT `device_id` FROM `devices` WHERE `disabled` = 0 AND `hostname` LIKE 'swb1tp' AND `poller_id` = '0' ORDER BY `device_id` ASC] SQL RUNTIME[0.00025105s]  SQL[SELECT * FROM `devices` WHERE `device_id` = '263'] SQL RUNTIME[0.00020504s]  SQL[SELECT * FROM `entity_attribs` WHERE `entity_type` = 'device' AND `entity_id` = '263'] SQL RUNTIME[0.00015116s] Array ( [device_id] => 263 [poller_id] => 0 [hostname] => swb1tp [sysName] => swB1PT [label] => [ip] => [snmp_community] => public [snmp_authlevel] => [snmp_authname] => [snmp_authpass] => [snmp_authalgo] => [snmp_cryptopass] => [snmp_cryptoalgo] => [snmp_context] => [snmpable] => [snmp_version] => v2c [snmp_port] => 161 [snmp_timeout] => [snmp_retries] => [snmp_maxrep] => [ssh_port] => 22 [agent_version] => [snmp_transport] => udp [bgpLocalAs] => [snmpEngineID] => 0000000001 [sysObjectID] => .1.3.6.1.4.1.11.2.3.7.11.195 [sysDescr] => [sysContact] => a.oberreiter@nadlinger.at [version] => [hardware] => [vendor] => [features] => [location] => Baustoffzentrum [os] => procurve [status] => 1 [status_type] => ok [ignore] => 0 [ignore_until] => [asset_tag] => [disabled] => 0 [uptime] => [last_rebooted] => [force_discovery] => 0 [last_polled] => [last_discovered] => 2024-10-15 12:35:23 [last_alerter] => 2024-10-15 12:46:40 [last_polled_timetaken] => [last_discovered_timetaken] => 7.53 [purpose] => [type] => network [serial] => [icon] => [device_state] => a:2:{s:17:"discovery_history";a:3:{i:1728988515;d:7.5268;i:1728988241;d:6.4584;i:1728988202;d:7.3725;}s:18:"discovery_mod_perf";a:27:{s:2:"os";d:0.0783;s:4:"mibs";d:0.3112;s:3:"vrf";d:0.0011;s:5:"ports";d:0.4889;s:11:"ports-stack";d:0.066;s:5:"vlans";d:0.2067;s:11:"ports_vlans";N;s:4:"oids";d:0.0005;s:12:"ip-addresses";d:0.2203;s:10:"processors";d:0.1865;s:8:"mempools";d:0.2173;s:9:"inventory";d:0.3092;s:15:"printersupplies";d:0.0006;s:7:"sensors";d:4.1425;s:7:"storage";d:0.0983;s:10:"neighbours";d:0.6724;s:9:"arp-table";d:0.1483;s:13:"junose-atm-vp";d:0.0002;s:9:"bgp-peers";d:0.0185;s:14:"mac-accounting";d:0.0002;s:3:"sla";d:0.1508;s:11:"pseudowires";d:0.0444;s:11:"cisco-cbqos";d:0.1001;s:10:"ucd-diskio";d:0.0531;s:4:"wifi";d:0.001;s:10:"p2p-radios";d:0;s:6:"graphs";d:0.0003;}} [distro] => [distro_ver] => [kernel] => [arch] => ) SQL[SELECT * FROM `observium_processes` WHERE `process_name` = 'poller.php' AND `device_id` = '263' AND `poller_id` = '0'] SQL RUNTIME[0.00014591s]  SQL[DELETE FROM `observium_processes` WHERE `process_id` = '206704157'] SQL RUNTIME[0.003829s]  SQL[INSERT INTO `observium_processes` (`process_pid`,`process_name`,`process_ppid`,`process_uid`,`process_command`,`process_start`,`device_id`) VALUES ('55080','poller.php','2593','1000','php ./poller.php -d -h swb1tp','1728989256','263')] SQL RUNTIME[0.00333905s]  SQL[SELECT * FROM `alert_tests`] SQL RUNTIME[0.00019097s] Cached 28 alert rules. SQL[SELECT * FROM `alert_table` WHERE `device_id` = '263'] SQL RUNTIME[0.00029397s] ##### swb1tp [263] #####   o OS  procurve  o Last Polled    o SNMP Version  v2c CMD[/usr/bin/fping -t 500 -c 1 -q 10.0.2.28 2>&1]  CMD EXITCODE[0] CMD RUNTIME[0.0041s] STDOUT[ 10.0.2.28 : xmt/rcv/oss = 1/1/0 min/avg/max = 1.94/1.94/1.94 ] Return cached 'swb1tp' = '10.0.2.28' CMD[/usr/bin/snmpget -v2c -c *** -Pud -OQUsn -m SNMPv2-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'swb1tp':'161' .1.3.6.1.2.1.1.2.0 .1.3.6.1.2.1.1.3.0]  CMD EXITCODE[0] CMD RUNTIME[0.0229s] STDOUT[ .1.3.6.1.2.1.1.2.0 = .1.3.6.1.4.1.11.2.3.7.11.195 .1.3.6.1.2.1.1.3.0 = 6:1:07:00.00 ] SNMP STATUS[TRUE]  o Device status  Device is reachable by PING (1.94ms) and SNMP (22.88ms) Return cached 'swb1tp' = '10.0.2.28' RRD /opt/observium/rrd/swb1tp/status.rrd already exists - no need to create. RRD CMD[update /opt/observium/rrd/swb1tp/status.rrd N:1] RRD RUNTIME[0.0011s] RRD STDOUT[ERROR: opening '/opt/observium/rrd/swb1tp/status.rrd': Permission denied] RRD_STATUS[FALSE]  RRD /opt/observium/rrd/swb1tp/ping.rrd already exists - no need to create. RRD CMD[update /opt/observium/rrd/swb1tp/ping.rrd N:1.94] RRD RUNTIME[0.0011s] RRD STDOUT[ERROR: opening '/opt/observium/rrd/swb1tp/ping.rrd': Permission denied] RRD_STATUS[FALSE]  RRD /opt/observium/rrd/swb1tp/ping_snmp.rrd already exists - no need to create. RRD CMD[update /opt/observium/rrd/swb1tp/ping_snmp.rrd N:22.88] RRD RUNTIME[0.0011s] RRD STDOUT[ERROR: opening '/opt/observium/rrd/swb1tp/ping_snmp.rrd': Permission denied] RRD_STATUS[FALSE]   SQL[SELECT * FROM `device_graphs` WHERE `device_id` = '263'] SQL RUNTIME[0.00021982s]  o Modules Excluded  unix-agent, wmi, ipmi, junose-atm-vp, cisco-ipsec-flow-monitor, cisco-remote-access-monitor, cisco-cef, arista-software-ip-forwarding,cipsec-tunnels, cisco-cbqos, cisco-eigrp, aruba-controller, cisco-vpdn  o Modules Disabled  applications, lsp, syslog  o Modules Enabled  system, os, sensors, status, counter, processors, mempools, storage, netstats, ucd-mib, ipSystemStats, ports, bgp-peers, printersupplies,ucd-diskio, wifi, p2p-radios, ospf, sla, pseudowires, mac-accounting, loadbalancer, entity-physical, fdb-table,graphs, oids, processes, probes including: includes/polling/system.inc.php ##### Module Start: system #####  JSON DECODE[Not string passed] JSON RAW[ ] JSON DECODE[Not string passed] JSON RAW[ ] SQL[SELECT `mib` FROM `devices_mibs` WHERE `device_id` = '263' AND `use` = 'mib' AND `disabled` = '1'] SQL RUNTIME[0.00015712s]  o SNMPv2-MIB   CMD[/usr/bin/snmpget -v2c -c *** -Pud -Ih -OQUsx --hexOutputLength=0 -m SNMPv2-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'swb1tp':'161' sysUpTime.0 sysLocation.0 sysContact.0 sysName.0]  CMD EXITCODE[0] CMD RUNTIME[0.0209s] STDOUT[ sysUpTime.0 = 6:1:07:00.00 sysLocation.0 = "42 61 75 73 74 6F 66 66 7A 65 6E 74 72 75 6D " sysContact.0 = "61 2E 6F 62 65 72 72 65 69 74 65 72 40 6E 61 64 6C 69 6E 67 65 72 2E 61 74 " sysName.0 = "73 77 42 31 50 54 " ] SNMP Hex string converted.. HEX: 42 61 75 73 74 6F 66 66 7A 65 6E 74 72 75 6D STRING: Baustoffzentrum SNMP Hex string converted.. HEX: 61 2E 6F 62 65 72 72 65 69 74 65 72 40 6E 61 64 6C 69 6E 67 65 72 2E 61 74 STRING: a.oberreiter@nadlinger.at SNMP Hex string converted.. HEX: 73 77 42 31 50 54 STRING: swB1PT SNMP STATUS[TRUE] Timeticks converted 6:1:07:00.00 -> 522420 CMD[/usr/bin/snmpget -v2c -c *** -Pud -Ih -OQUvx --hexOutputLength=0 -m SNMPv2-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'swb1tp':'161' sysDescr.0]  CMD EXITCODE[0] CMD RUNTIME[0.0155s] STDOUT[ "48 50 45 20 4E 65 74 77 6F 72 6B 69 6E 67 20 49 6E 73 74 61 6E 74 20 4F 6E 20 53 77 69 74 63 68 20 38 70 20 47 69 67 61 62 69 74 20 43 4C 34 20 50 6F 45 20 32 70 20 53 46 50 20 31 32 34 57 20 31 39 33 30 20 4A 4C 36 38 31 41 2C 20 49 6E 73 74 61 6E 74 4F 6E 5F 31 39 33 30 5F 33 2E 30 2E 30 2E 30 20 28 31 32 29 " ] SNMP Hex string converted.. HEX: 48 50 45 20 4E 65 74 77 6F 72 6B 69 6E 67 20 49 6E 73 74 61 6E 74 20 4F 6E 20 53 77 69 74 63 68 20 38 70 20 47 69 67 61 62 69 74 20 43 4C 34 20 50 6F 45 20 32 70 20 53 46 50 20 31 32 34 57 20 31 39 33 30 20 4A 4C 36 38 31 41 2C 20 49 6E 73 74 61 6E 74 4F 6E 5F 31 39 33 30 5F 33 2E 30 2E 30 2E 30 20 28 31 32 29 STRING: HPE Networking Instant On Switch 8p Gigabit CL4 PoE 2p SFP 124W 1930 JL681A, InstantOn_1930_3.0.0.0 (12) SNMP STATUS[TRUE]  CMD[/usr/bin/snmpget -v2c -c *** -Pud -OQUvn -m SNMPv2-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'swb1tp':'161' sysObjectID.0]  CMD EXITCODE[0] CMD RUNTIME[0.0154s] STDOUT[ .1.3.6.1.4.1.11.2.3.7.11.195 ] SNMP STATUS[TRUE]  CMD[/usr/bin/snmpget -v2c -c *** -Pud -OQUv -m SNMP-FRAMEWORK-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'swb1tp':'161' snmpEngineID.0]  CMD EXITCODE[0] CMD RUNTIME[0.0198s] STDOUT[ "00 00 00 00 01 " ] SNMP STATUS[TRUE]  CMD[/usr/bin/snmpget -v2c -c *** -Pud -OQUv -m HOST-RESOURCES-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'swb1tp':'161' hrSystemUptime.0]  CMD EXITCODE[0] CMD RUNTIME[0.0184s] STDOUT[ No Such Object available on this agent at this OID ] SNMP STATUS[FALSE] SNMP ERROR[#1000 - Failed response]  SQL[SELECT * FROM `snmp_errors` WHERE `device_id` = '263' AND `error_code` = '1000' AND `snmp_cmd` = 'snmpget' AND `mib` = 'HOST-RESOURCES-MIB' AND `oid` = 'hrSystemUptime.0';] SQL RUNTIME[0.00045609s]  SQL[UPDATE `snmp_errors` SET `error_count` ='10',`updated` ='1728989256' WHERE `error_id` = '15057'] SQL RUNTIME[0.00363493s]  CMD[/usr/bin/snmpget -v2c -c *** -Pud -OQUv -m SNMP-FRAMEWORK-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'swb1tp':'161' snmpEngineTime.0]  CMD EXITCODE[0] CMD RUNTIME[0.0149s] STDOUT[ 522392 ] SNMP STATUS[TRUE] Using SNMP Agent sysUpTime (522420 sec. => 6 days, 1h 7m) RRD /opt/observium/rrd/swb1tp/uptime.rrd already exists - no need to create. RRD CMD[update /opt/observium/rrd/swb1tp/uptime.rrd N:522420] RRD RUNTIME[0.0011s] RRD STDOUT[ERROR: opening '/opt/observium/rrd/swb1tp/uptime.rrd': Permission denied] RRD_STATUS[FALSE]   o Uptime  6 days, 1h 7m  o Last reboot  2024-10-09 11:40:36 Array ( [use] => sysUpTime [sysUpTime] => 522420 [hrSystemUptime] => [snmpEngineTime] => 522392 [uptime] => 522420 [formatted] => 6 days, 1h 7m [message] => Using SNMP Agent sysUpTime [previous] => [diff] => -522420 [last_rebooted] => 1728466836 [rebooted] => 0 ) CMD[/usr/bin/snmpget -v2c -c *** -Pud -OQUsn -m UCD-SNMP-MIB -M /opt/observium/mibs/rfc:/opt/observium/mibs/net-snmp 'udp':'swb1tp':'161' .1.3.6.1.4.1.2021.10.1.5.1 .1.3.6.1.4.1.2021.10.1.5.2 .1.3.6.1.4.1.2021.10.1.5.3]  CMD EXITCODE[0] CMD RUNTIME[0.0147s] STDOUT[ .1.3.6.1.4.1.2021.10.1.5.1 = No Such Object available on this agent at this OID .1.3.6.1.4.1.2021.10.1.5.2 = No Such Object available on this agent at this OID .1.3.6.1.4.1.2021.10.1.5.3 = No Such Object available on this agent at this OID ] SNMP ERROR[#1000 - Failed response]  SQL[SELECT * FROM `snmp_errors` WHERE `device_id` = '263' AND `error_code` = '1000' AND `snmp_cmd` = 'snmpget' AND `mib` = 'UCD-SNMP-MIB' AND `oid` = '.1.3.6.1.4.1.2021.10.1.5.1 .1.3.6.1.4.1.2021.10.1.5.2 .1.3.6.1.4.1.2021.10.1.5.3';] SQL RUNTIME[0.00036812s]  SQL[UPDATE `snmp_errors` SET `error_count` ='10',`updated` ='1728989256' WHERE `error_id` = '15058'] SQL RUNTIME[0.00393701s] SNMP STATUS[FALSE]  SQL[SELECT * FROM `devices` WHERE `devices`.`device_id` = '263'] SQL RUNTIME[0.000247s]  SQL[INSERT INTO `eventlog` (`device_id`,`entity_id`,`entity_type`,`timestamp`,`severity`,`message`) VALUES ('263','263','device',NOW(),'6','sysName -> \'swb1pt\'')] SQL RUNTIME[0.00380611s]  SQL[INSERT INTO `eventlog` (`device_id`,`entity_id`,`entity_type`,`timestamp`,`severity`,`message`) VALUES ('263','263','device',NOW(),'6','sysDescr -> \'HPE Networking Instant On Switch 8p Gigabit CL4 PoE 2p SFP 124W 1930 JL681A, InstantOn_1930_3.0.0.0 (12)\'')] SQL RUNTIME[0.00348616s]  o sysObjectID  .1.3.6.1.4.1.11.2.3.7.11.195  o snmpEngineID  0000000001  o sysDescr  HPE Networking Instant On Switch 8p Gigabit CL4 PoE 2p SFP 124W 1930 JL681A, InstantOn_1930_3.0.0.0 (12)  o sysName  swB1PT  o Location  Baustoffzentrum SQL[SELECT *, UNIX_TIMESTAMP(`location_updated`) AS `location_unixtime` FROM `devices_locations` WHERE `device_id` = '263'] SQL RUNTIME[0.00016403s] Request [https://www.geocode.farm/v3/json/forward/?addr=Baustoffzentrum&lang=en&count=1] #1: HTTP 'php' library used. SQL[SELECT EXISTS (SELECT 1 FROM `observium_attribs` WHERE `attrib_type` = 'http_rate_https://www.geocode.farm')] SQL RUNTIME[0.00014901s]  SQL[UPDATE `observium_attribs` SET `attrib_value` ='{\"2024-10-15\":12}' WHERE `attrib_type` = 'http_rate_https://www.geocode.farm'] SQL RUNTIME[0.00366497s] HTTP CURL cmd: curl --connect-timeout 15 -X GET -H 'Connection: close' -H 'User-Agent: Observium/24.8.13606' https://www.geocode.farm/v3/json/forward/?addr=Baustoffzentrum&lang=en&count=1 REQUEST[https://www.geocode.farm/v3/json/forward/?addr=Baustoffzentrum&lang=en&count=1] REQUEST STATUS[TRUE] REQUEST RUNTIME[2.2397s] RESPONSE CODE[200 OK]  ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⡶⠋⠁⠙⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⣠⡶⠛⠛⠲⣤⣀⠀⠀⠀⠀⡀⠀⠀⠀⠀⠀⠀⠀⣠⠄⣠⣾⣡⠀⠀⠀⠀⠸⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⢰⡏⠀⠀⠀⠀⠈⣿⣷⣤⡐⣄⣽⡾⠧⠤⠤⣤⣤⣾⣿⣾⣿⣯⣀⡀⠀⠀⠀⢠⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⢷⡀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣯⣤⣤⡀⣠⣈⣹⣽⣿⣿⣿⣿⣷⣦⣄⠀⢀⡾⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠈⠻⣆⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⠀⣠⠞⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠈⢳⣆⠘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⣾⣷⣶⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⣘⣿⣿⣿⣿⣿⣟⣿⣿⣿⣿⣿⣿⣿⣿⢡⡼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⣾⣿⣿⣿⣿⣿⡏⣯⡇⣿⣿⣿⡏⣿⣿⣿⣜⣛⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣭⣾⣿⣿⣿⣇⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠃⠀⠘⢷⣄⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⢠⣿⣿⡏⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡏⢿⣿⣿⡿⠁⠀⠀⠀⠸⣿⣷⡀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⢸⣿⣿⡇⠈⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠻⣿⣿⡟⢠⣿⣿⡟⠁⠀⠀⠀⠀⠙⣻⣿⣿⣆⠀⠀⠀⠀⠀ ⠀⠀⠀⠈⣿⣿⣷⡈⠛⠿⣿⣿⡆⠻⢿⣿⣽⣿⣯⣿⠿⠃⠀⠻⠛⣰⣿⣿⠏⠀⠀⠀⠀⢀⣙⣿⣿⣿⣿⣿⣧⡀⠀⠀⠀ ⠀⠀⠀⠀⢿⠈⠙⠻⠷⠤⠄⢉⡁⠀⠀⠙⢉⣵⣌⠀⠀⠀⣀⠄⠘⠛⠋⠁⢀⣀⣤⣤⣭⣭⣽⣿⣿⣿⣿⣿⣿⣷⡀⠀⠀ ⠀⠀⠀⢀⣿⡄⠀⠀⠀⠀⠀⠀⠉⠓⢦⣄⡉⠉⢉⣩⠶⠋⠁⠀⠀⠀⣠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡀⠀ ⠀⠀⠀⣼⣿⣿⣷⣶⣶⣆⣀⡀⠀⠀⠀⠀⠉⠉⠉⠀⠀⠀⠀⠀⣠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⠀ ⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣥⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⣸⣦⣾⣿⣿⣿⣿⣿⣿⡿⠿⠿⡟⠿⣿⣟⡿⢿⡛⠀⣘⣿⣿⡆ ⠀⠀⠀⢿⣿⣿⠿⠿⠿⠿⢿⣿⣿⣷⣿⡆⠀⠀⣶⣶⣾⡿⠛⠛⠛⠛⠻⣿⣿⣿⡟⠉⠀⠀⠀⠈⠁⠁⢀⢀⠲⣬⣿⣿⡇ ⠀⠀⠀⠘⡏⠳⣤⡄⠀⡄⠀⠀⠈⠙⢿⣧⠀⢀⣿⣿⠏⠀⠀⠀⠀⢀⣠⣿⣿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠈⣯⣷⣿⣿⣿⡇ ⠀⠀⠀⠀⢿⠀⠀⠉⠳⣇⠀⠀⠀⠀⠀⢻⠀⢸⣿⣿⣆⢠⠀⡆⣰⡿⠟⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡾⣿⣿⣿⣿⣿⡇ ⠀⠀⠀⠀⠘⣧⠀⠀⠀⠹⣷⣤⣄⠀⡈⣾⡆⢸⡿⠋⠿⠾⠴⠷⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⠞⠉⣶⣾⣿⣿⣿⣿⠀ ⠀⠀⠀⠀⠀⠈⠳⣄⠀⠀⠀⠉⠻⣿⣿⣿⣇⠸⡷⠀⠀⠀⢀⣠⢄⣠⣶⣤⣤⣤⡤⠤⠖⠛⠉⠀⠠⣤⣼⣿⣿⣿⣿⡏⠀ ⠀⠀⠀⠀⠀⠀⠀⠉⢻⣷⠶⠒⠀⠀⠁⠈⢿⡄⣷⣆⣤⣶⡿⠛⠛⠛⠉⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠈⢿⣿⣿⣿⣿⠇⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠘⣏⠀⠀⠀⠀⠀⠀⠘⣧⣿⣿⡿⢋⡤⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠰⣾⣿⣿⣿⣿⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⡄⠀⠀⠀⠀⠀⠀⢸⣿⣿⣶⣫⠆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⢦⣵⣿⣿⣿⣿⠇⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣆⠀⠀⠀⠀⠀⠀⣿⣿⣿⠇⠀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠳⠦⣴⣿⣶⣿⣿⣿⣿⡿⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠛⢷⣄⠀⠀⠀⠀⢹⣿⣿⣾⣿⣋⣤⡄⠀⠀⠀⠀⠀⠀⠀⠠⣈⠻⣿⣿⣿⣿⣿⡇⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠛⣦⣤⣤⣾⣿⣿⣿⣿⣿⣯⡴⠂⣀⡀⠀⡀⡀⡀⢠⣬⣻⣿⣿⣿⣿⡿⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣀⣀⣠⡴⠊⠉⠀⠈⢹⠿⣿⣿⣿⣿⣿⣷⣾⣿⠾⡿⡿⠿⣷⣦⣿⣿⣿⣿⣿⡟⠁⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠛⠷⠦⠤⠤⠴⠶⠶⠶⠶⠚⠉⠀⠀⠈⣉⣩⠽⠟⠋⠁⠀⠀⣁⣠⠿⠛⠋⠉⠉⠉⠁⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠉⠉⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ Oops! Something went wrong! You may want to report this to the Observium developers. Call to undefined function mb_ord() in /opt/observium/includes/common.inc.php:4972 Stack trace: #0: (unknown function) called at [/opt/observium/includes/common.inc.php:4972] 4967: * "\u00cb\u0419\u0426\u0423\u041a\u0415\u041d\u0413\u0428\u0429\u0417\u0425\u042a\u0424\u042b\u0412\u0410\u041f\u0420\u041e\u041b\u0414\u0416\u042d\u042f\u0427\u0421\u041c\u0418\u0422\u042c\u0411\u042e" 4968: */ 4969: function fix_json_unicode($string) 4970: { 4971: return preg_replace_callback('/([\x{0080}-\x{FFFF}])/u', function ($match) { 4972: return '\\u' . str_pad(dechex(mb_ord($match[1], 'UTF-8')), 4, '0', STR_PAD_LEFT); 4973: }, $string); 4974: } 4975:  4976: function safe_unserialize($str) 4977: { #1: {closure} called at [(unknown file):(unknown line)] #2: preg_replace_callback called at [/opt/observium/includes/common.inc.php:4973] 4968: */ 4969: function fix_json_unicode($string) 4970: { 4971: return preg_replace_callback('/([\x{0080}-\x{FFFF}])/u', function ($match) { 4972: return '\\u' . str_pad(dechex(mb_ord($match[1], 'UTF-8')), 4, '0', STR_PAD_LEFT); 4973: }, $string); 4974: } 4975:  4976: function safe_unserialize($str) 4977: { 4978: if (is_array($str)) { #3: fix_json_unicode called at [/opt/observium/includes/common.inc.php:4946] 4941: // Try to fix "Control character error, possibly incorrectly encoded" 4942: $str_fix = preg_replace('/[[:cntrl:]]/', '', smart_quotes($str)); 4943: print_debug_vars($str_fix); 4944: } else { 4945: // Try fix utf errors 4946: $str_fix = fix_json_unicode(smart_quotes($str)); 4947: print_debug_vars($str_fix); 4948: } 4949: $json_fix = @json_decode($str_fix, TRUE, 512, $options); 4950: if (json_last_error() === JSON_ERROR_NONE) { 4951: //print_vars(smart_quotes(fix_json_unicode($str))); #4: safe_json_decode called at [/opt/observium/includes/http.inc.php:611] 606:  607: // If response return valid code and content, additional parse for specific defined tests 608: if ($success) { 609: // Decode if request OK 610: if ($is_response_array) { 611: $response = safe_json_decode($response); 612: } 613: // else additional formats? 614:  615: // Check if call succeeded 616: if (isset($def['response_test'])) { #5: test_http_request called at [/opt/observium/includes/http.inc.php:712] 707: $request_status = FALSE; 708: // Send out API call and parse response 709: for ($retry = 1; $retry <= (int)$request_retry; $retry++) { 710: print_debug("Request [$url] #$retry:"); 711: $response = get_http_request($url, $options, $ratelimit); 712: if ($request_status = test_http_request($def, $response)) { 713: // stop for on success 714: return $request_status; 715: } 716: // wait little time 717: sleep($request_sleep); #6: process_http_request called at [/opt/observium/includes/geolocation.inc.php:339] 334:  335: // API URL to POST to 336: $url = generate_http_url($geo_def, $tags); 337:  338: // First or second request 339: if (process_http_request($geo_def, $url, $options, $mapresponse)) { 340:  341: switch ($geo_def['response_format']) { 342: case 'xml': 343: // Hrm, currently unused 344: break; #7: get_geo_http_def called at [/opt/observium/includes/geolocation.inc.php:142] 137: $address_second = $geo_type === 'forward' ? generate_location_alt($address) : NULL; 138:  139: // Generate geolocation tags, used for rewrites in definition 140: $tags = generate_geolocation_tags($location['location_geoapi'], $location); 141:  142: $data = get_geo_http_def($geo_def, $geo_type, $tags, $debug_msg); 143:  144: if (!$data) { 145: // Return an old array with new status (for later recheck) 146: unset($geo_db['hostname'], $geo_db['location_updated']); 147: $location['location_status'] = $debug_msg; #8: get_geolocation called at [/opt/observium/includes/polling/system.inc.php:311] 306: print_debug_vars($geo_db); 307:  308: $geo_detect = geo_detect($device, $poll_device, $geo_db, $dns_only); 309:  310: if ($geo_detect || $dns_only) { 311: $update_geo = get_geolocation($poll_device['sysLocation'], $geo_db, $dns_only); 312: if ($update_geo) { 313: print_debug_vars($update_geo, 1); 314: if (is_numeric($update_geo['location_lat']) && is_numeric($update_geo['location_lon']) && $update_geo['location_country'] !== 'Unknown') { 315: $geo_msg = 'Geolocation (' . strtoupper($update_geo['location_geoapi']) . ') -> '; 316: $geo_msg .= '[' . sprintf('%f', $update_geo['location_lat']) . ', ' . sprintf('%f', $update_geo['location_lon']) . '] '; #9: include called at [/opt/observium/includes/polling/functions.inc.php:314] 309:  310: print_cli_heading("Module Start: %R" . $module); 311:  312: $m_start = utime(); 313:  314: include($config['install_dir'] . "/includes/polling/$module.inc.php"); 315:  316: $m_run = elapsed_time($m_start, 4); 317: $device_state['poller_mod_perf'][$module] = $m_run; 318: print_cli_data("Module time", format_number_short($m_run, 4) . "s"); 319:  #10: poll_device called at [/opt/observium/poller.php:189] 184: $params[] = $config['poller_id']; 185: } 186:  187: foreach (dbFetchColumn($query, $params) as $device_id) { 188: $device = dbFetchRow("SELECT * FROM `devices` WHERE `device_id` = ?", [ $device_id ]); 189: poll_device($device, $options); 190: $polled_devices++; 191: } 192:  193: $poller_time = elapsed_time($poller_start, 4); 194: