These changes are available now in Observium Professional and Enterprise editions. Community Edition releases do not follow a fixed schedule. Some changes listed below may only apply to Professional/Enterprise editions.
๐ฏ Major Features:
- r14589: RANCID config search with regex pattern management, history search, and export +2,367/-184
- r14648: Sensor auto-calibration system with individual/bulk updating UI, discovery-time autocalibration UI config entries. +2,619/-49
- r14762: Add power device overview +9,333/-1
โจ New Features:
- r14685: Added expired scheduled maintenance cleanup to Housekeeping (OBS-4330). +109/-39
- r14729: Add Transceiver data to port page +4/-1
- r14731: Nokia SR OS SAP per-port statistics +400/-5
- r14752: Add additional Socomec status entries. +48/-0
- r14767: Show alertlog on power overview. +5/-0
- r14823: Add support for fwInstallTime from Checkpoint +11/-0
- r14830: Missing file for Mosquitto app +23/-0
โก Improvements:
- r14547: Added discovery additional APC pdu and ups power sensors by PowerNet-MIB. +102/-8
- r14556: Moved list of ignored vlans to os/group definition, added option for ability global ignore list of vlans. Fixed discovery cisco reserved vlans on other platforms. +46/-26
- r14559: Added autodiscovery option to limit SNMP versions used. +9/-2
- r14560: Function
test_condition() regex condition detect if test string already pattern with delimiters. +331/-313
- r14564: Added
parse_condition_string() for simplified condition syntax in MIB and http test definitions. Refactor key 'test_and' for replace hidden 'and' flag with explicit key. +831/-153
- r14571: Added
get_network_start(). Removed direct calls to IPLib from main code parts. +28/-22
- r14573: Reset opcache directly on fatal error handler. +6/-40
- r14574: Convert device fields last_polled and ignore_until to unittime in db query. +51/-27
- r14580: Added DEVICE_NAME and DEVICE_IP tyo message tags for alert notigications. +40/-7
- r14591: Improved generate querybuilder save/reset buttons. Unified js scripts generate for querybuilder. +209/-325
- r14597: Dashboard: make ownership permissions configurable, fix editability rules, and add the widget picker UI +368/-168
- r14598: Overhaul platform stats and poller/partition telemetry, rename /pollerlog/ to /platform/, and centralize default poller_id=0 row creation for CE/non-CE +1,682/-956
- r14604: Added
safe_pattern() to simplify detection of regex pattern delimiters when a pattern is passed without them. +53/-52
- r14605: Added actions json_encode, id and password to
string_transform(). Added missing unit tests and descriptions. +159/-37
- r14607:
string_transform(): use safe_split_space() for explode/split actions when delimiter is not set. +42/-6
- r14624: Improved discovery dom sensors and vlans by FIBERSTORE-MIB (OBS-5174). +124/-50
- r14625: Autodiscovery: add configurable XDP IP correlation modes +138/-73
- r14630: Scheduled maintenance: fix UI update handling, idempotent associations, selective syslog reload, schema consistency, and implement API/tests +499/-38
- r14639: Update BGP VRFs names for duplicate peer entries. +43/-25
- r14652: Rewrite Cytoscape traffic map with AJAX refresh, dark mode, and utilisation labels and other additions +527/-100
- r14657: Harmonisation of sensor/status/counter entity type code, Addition of better entity linking, many general bug/inconsistency fixes. +379/-77
- r14662: Sync LDAP user to local users table on login and add live LDAP re-validation for API tokens +177/-12
- r14665: BFD: Improve polling and UI across Cisco and Juniper modules +249/-53
- r14667: BFD UI improvements: fix global stats WHERE filter, stacked session table cells (discriminators/VRF/auth/detect time), sort support, IP search, flaps filter, device sessions filter form +352/-318
- r14668: Added convert Juniper hex IP addresses to
hex2ip(). +7/-1
- r14670: Fixed display default poller wrapper graphs. Improved display long list of devices as expandable list. +78/-34
- r14673: BFD: Multiple fixes to poller and UI code. Improve port/device matching, local/remote address inference. +333/-253
- r14676: Forced migrate legacy entity asociations on re-enable alert checker. +216/-172
- r14678: Improved display styles on API tokens page. Use native mysql functions for time conversion. Use common form generate function. +177/-95
- r14680: Improved auth logging and display. Improved housekeeping clean for authlog. +354/-198
- r14682: Improved housekeeping cleanup log tables with delete by chunks. Added helper function
dbDeleteChunks(). +62/-75
- r14683: Optimized
is_cli()/is_cron()/is_ssl()/is_ajax()/is_iframe()/cli_is_piped(). Removed unnecessary constants, add SSL detection methods, systemd timer support. +145/-58
- r14690: Improved detect more distro without distro script, like NixOS, Kali, Suse. Moved distro detection to separate function
poll_device_unix_distro(). +446/-349
- r14703: Rename alert_check pages to alert_test, standardise UI terminology to Alert Test +2,144/-2,137
- r14705: Improved port association for ENTITY-MIB inventory entries by ifDescr. +21/-10
- r14717: Notifications now include measured entity context in alerts for sensors/status/counters where available. +214/-22
- r14720: Group system improvements: fix eventlog filtering, permissions, nested menus and name resolution +190/-90
- r14721: VRF UI rework +768/-56
- r14725: Improve alert test validation to reject invalid test condition operators +217/-45
- r14746: Refactor BFD UI. Add issues view and graphs +554/-227
- r14749: Collect some additional metrics from JUNIPER-IFOPTICS-MIB +156/-1
- r14768: Improve power overview summary bar metrics +173/-110
- r14772: Added counters_empty parameter in ports_ignore os rules. Keep active Cisco ServiceInstance interfaces. +29/-1
- r14775: Improve Power overview UPS component layout and handling of power modules +259/-37
- r14781: Moved ports MIB helpers to global MIB helper path. +679/-681
- r14785: Added quick search form on settings page. +14/-2
- r14790: Improved Network navbar menu entries. +2/-7
- r14791: Added logging for initial db schema import errors. +16/-0
- r14795: Poller wrapper use /proc/<pid> on Linux instead of shelling out to ps. +85/-17
- r14802: Auth - replace remember-me password cookies with persistent tokens +118/-26
- r14803: Improved discovery ip addresses by IP-MIB using numeric indexes. Added validate for incorrect value in
snmp2ipv6(). +68/-49
- r14808: Sensor calibration workflow improvements +280/-193
- r14809: Moved valid port exceptions to OS definition 'ports_valid'. Migrated non-obvious 'allow_empty' rules by ifType and TiMOS specific hardcoded exeption. +203/-127
- r14810: BFD UX improvements and entity alerting and webhook context improvements +152/-5
- r14815: Optimized
match_discovery_oids() os type and port field checks. +82/-21
- r14825: Improved discovery IEEE8023-LAG-MIB and port stacks by this mib. +6/-1
- r14826: Improved discovery IEEE8023-LAG-MIB and port stacks by this mib (2). +58/-50
- r14827: Improved SNMP BITS flags helper and added tests. +116/-75
- r14828: Add optional alert test notification schedules +214/-41
- r14834: Improve table generation with the ability to suppress empty columns and improve flexible graph row rendering and labels +269/-0
๐ Bug Fixes:
- r14548: Fixed js
openLink() function do not trigger open url on selecting text. +9/-9
- r14551: Fixed generate status form for status type field. +83/-69
- r14552: Fixed open links in new tab with Meta/Ctrl key click.
- r14567: Fixed Add probe form user level. +1/-1
- r14572: Fixed snmp community string validation for non-standard lengths exceeding 32 characters. +18/-4
- r14576: Fixed display device down time in status widgets. +7/-2
- r14579: Removed call to
get_entity_group_names() in CE. +79/-73
- r14582: Fixed fdb local port association for vlans with null in vlan name. +4/-1
- r14586: Fixed display error messages in ajax requests. +45/-15
- r14587: Prevent infinite loop for display critical errors on dashboard.
- r14592: Fixed display devices/ports count for groups in navbar. +35/-31
- r14594: Correctly count ignored ports in cache data. +4/-2
- r14601: Correct conditional_map condition handling and add regression tests +239/-64
- r14613: Harden graph dashboard add/edit permissions and preserve group selector vars +28/-12
- r14620: Fixed update CBQOS values in db by CISCO-CLASS-BASED-QOS-MIB. +16/-10
- r14621: Fixed OSPF polling db update warnings. +8/-12
- r14627: Fixed override neighbour ip address from LLDP by MIKROTIK-MIB. +3/-3
- r14628: Fixed hardware replace action by UBNT-UniFi-MIB. +4/-2
- r14636: Alert duration - use pre-update last_ok for recovery notifications +12/-2
- r14642: Dashboard: restore legacy starter visibility and fallback generation +9/-3
- r14643: Dashboard: robust starter bootstrap and fallback for stale default ids +109/-1
- r14644: Navbar - show map and traffic map for Global Read users +2/-2
- r14653: Fix some poller list population and fix device poller perf page to use rrd step as poller interval. +69/-21
- r14654: Guard entity iteration against non-array config entries in add/group UI +2/-2
- r14658: Remove erroneous duplicate
discover_entity() function. +0/-78
- r14659: Traffic accounting historical usage graph - add PB/EB/ZB/YB units to
formatBytes() +2/-2
- r14660: API tokens page - add missing requesttoken CSRF field to revoke form +1/-0
- r14666: Additional BFD cleanups and fixes +21/-5
- r14671: Fixed display vlan links on global vlans page. Improved display expandable list of VLANs. +21/-28
- r14674: Fixed request token param name. Fixed set user settings.
- r14714: Notification logging and notifier queue handling +1,093/-120
- r14715: Notification queue expiry, retry backoff and alert event linkage +54/-17
- r14719: Fix group event log tab query generation. +1/-1
- r14726: Confirmation popovers - default helper to plain text and require explicit HTML opt-in +9/-61
- r14732: Improve SROS transceiver filtering removing a lot of noise +25/-9
- r14739: Improve handling of some types of PRINTER-MIB counters where coincidence isn't always reality. +26/-6
- r14744: Fix some php8 deprecation warnings and improve BASE64 form submission +32/-10
- r14747: Set asterfusion realtime default to 60 seconds to match counter update time. OBS-5204 +1/-1
- r14748: Fix temperature via JUNIPER-IFOPTICS-MIB +5/-5
- r14751: Fix Gude definition to not classify secondary input as an alert. +1/-1
- r14753: Clamp oversized graph dimensions to safer export limits +6/-0
- r14754: Move navbar search JS out of inline handlers for CSP compatibility +8/-61
- r14764: Improve status panel rendering and remove some noisy debugging +13/-74
- r14765: Fix API probes endpoint handler +21/-5
- r14766: Switch to standard overview when power overview is empty +5/-1
- r14778: Power overview - avoid double-converting runtime values +3/-4
- r14779: Power overview - avoid 3+1 compact metric grids
- r14780: Make instance sharding deterministic in poller wrapper (OBS-5211). +47/-30
- r14788: Fix alert tests formatting slightly. +1/-3
- r14794: Restore multi-role user membership and fix cache invalidation on role changes. +27/-4
- r14801: Fix FortiVoice tree OID and add FortiAuthenticator OS definition +10/-1
- r14804: Auth - sync AD users for persistent token authentication +109/-12
- r14805: Auth - align persistent token user lookups +60/-3
- r14811: Fixed discovery of non-existent input/output/bypass phase sensors by UPS-MIB. +50/-29
- r14814: Harmonise bypass power overview rendering. +53/-17
- r14831: Fix PowerDNS recursor application graphs +575/-575
- r14832: Fix PowerDNS recursor application graphs +28/-28
- r14833: Fix mosquitto app syntax +2/-2
๐ง Minor Changes:
- r14557: Moved process-specific (alerter/poller/discovery) includes to common observium include. Moved unix-agent specific functions to separate include. +220/-187
- r14563: Added
safe_split_space() for safely splitting strings by whitespace with a minimum parts guarantee. Added unit tests. +120/-14
- r14568: Email transport - add optional custom subject template using {{TAGS}} syntax +5/-2
- r14584: Added unit tests for
value_to_units() and value_unit_convert(). Fixed square and qubic unit aliases. +517/-2
- r14610: Improved exclude incorrect DOM sensors for UTP/Cooper ports by CISCO-ENTITY-SENSOR-MIB (OBS-5175). +23/-3
- r14612: Add selector-based group aggregate graphs for PUE and port bits compare +413/-7
- r14635: Added display summary duplicate BGP peers in VRFs. +27/-5
- r14649: validate widget id and enforce dashboard view permission; enable widget render mode +10/-1
- r14650: Add preg_last_error_msg polyfill, use routing icon for BFD, and optimize maintenance association rendering +37/-5
- r14663: Add web config definition for ldap/api auth options +13/-0
- r14681: Added option to enable auth logging to file for use with system blockers like fail2ban (disabled by default). +15/-11
- r14686: Updated distro script. Improved detect os version by os-release. +6/-3
- r14688: Improved detect parallels and oracle virtual without systemd-detect-virt in distro script. +14/-5
- r14693: Improved detect distro version for IPFire. Distro script updated to latest. +12/-8
- r14695: Added polling distro with NET-SNMP-EXTEND-MIB. Improved detect OpenWrt with distro script. +60/-13
- r14697: Dashboard status widget changes to add probe warnings and alerts +44/-1
- r14707: More port associations for ENTITY-MIB inventory entries by ifDescr. +15/-6
- r14710: Fixed runtime scales by BETTERBE-KOELMODULE-MIB. +3/-3
- r14716: Prevent fatal error in poller wrapper when pollers table does not yet exist (OBS-5194). +24/-16
- r14718: Implement split UI for wireless metrics and sensors +927/-82
- r14727: Add transceiver discovery system, web ui pages and db schema update. +1,444/-1
- r14730:
is_port_valid() now allows ifOperStatus=notPresent only for Nokia timos interfaces that look like pseudowires, based on ifName matching ^pw-\d+$ or ifDescr containing PW Port. +8/-1
- r14733: Collect and use device runtime from UNIVIEW NVR to improve device uptime. +2/-0
- r14734: Improve Kyocera printer counters +60/-0
- r14738: Improve Kyocera total page counter labels and synthetic discovery values +3/-5
- r14742: Add Nokia Timetra OAM/SAA SLA support +165/-0
- r14743: Improve TimOS hardware detection +10/-1
- r14745: Add BFD session graph auth file +35/-0
- r14773: Added kvm os group definition. +19/-2
- r14776: Added global timezone setting for config and web config with php timezone default. +149/-17
- r14777: Added per-user timezone setting with browser timezone option. +47/-3
- r14792: Add aggregate counter graph variants +175/-2
- r14793: Extend device group association filters +72/-0
- r14796: Removed compatibility for python below
3.3 in poller wrapper. +80/-103
- r14798: Added discovery extra sensors for APC InRow by PowerNet-MIB (OBS-2486). +54/-2
- r14806: Allow deletion of multiple devices at once using the delhost page. +39/-17
- r14816: Moved ADSL-LINE-MIB from default os definition to mibs discovery. +3/-5
- r14821: Add alert state to notification log +133/-4
- r14835: Added discovery volume status by NIMBLE-MIB (OBS-5219). +24/-11
- r14837: Device lookup - prevent unnecessary hostname and sysname queries. +66/-27
๐จ UI Changes:
- r14763: Add new shared card LESS styles for power overview UI
- r14807: Fix box header toolbox positioning
๐ MIB Updates:
- r14553: Updated APC mib files.
- r14554: Updated HP mib files.
- r14637: Update Gude ETS8801 MIB
- r14700: Moved GBN and related mib files to separate dir. +106/-106
- r14701: Reorganised
FS.COM mib files for NMS cloned mib files. +692/-638
- r14735: Add Endrun MIBs
- r14736: Add additional Huawei OPTIX MIBs
- r14756: Updated EndRun mib files.
- r14783: Add Extreme wireless / Hipath MIBs
- r14784: Add Extreme wireless / Hipath MIBs
- r14813: Added riello mib files.
- r14836: Updated HP mib files.
๐๏ธ Database Changes:
- r14631: Add scheduled maintenance schema changes. +4/-0
- r14633: Updated initial db schema to version 518. Added script for generate schema dump. +2,137/-855
๐ PHP 8 Fixes:
- r14664: Fix
PHP 8.0 not-an-array issue in includes/entities/port.inc.php +10/-3
- r14698: Prevent possible fatal error in
generate_querybuilder_filters(). +13/-4
- r14799: Prevent fatal error for ipv6 address discovery on VMWare ESXi (OBS-4866). +20/-10
๐ Trivial Changes:
- r14546: Improved error messages on try load python modules natsort and impacket for wmic script. +30/-11
- r14550: Use icon definition when exist in
generate_element_select(). +5/-2
- r14558: Moved mempool and db functions from common include to correct places. +125/-119
- r14565: Added debug warnings for malformed conditions in
parse_condition_string(). Prefer explicit type prefix in MIB definitions. Added unit tests for incorrect test definitions. +132/-32
- r14577: Added error message when trying run poller with host 'new' keyword. +12/-3
- r14581: Added debug messages for false email notification send. +19/-14
- r14588: Prevent return possible empty in
get_local_id(). +16/-9
- r14599: Removed unnecessary check for pollers table exist in
ensure_default_poller_row(). Renamed is_poller_main() to is_poller_default(). +23/-16
- r14600: Fixed validate forward geo api request for ArcGIS. +185/-184
- r14606: Fixed runtime sensor scale by COMAP-InteliLite4-30. +3/-2
- r14608: Fixed
safe_split_space() padding for empty string. +6/-5
- r14617: Display full path to snmpdump. +7/-4
- r14623: Reduced default uptime max for 64 bit system. +9/-2
- r14626: Simplified polyfill for
array_last(). +2/-2
- r14629: Prevent fatal error in
string_trasform() for regex actions with array in from/to arguments. +8/-0
- r14634: Added debug message about duplicate bgp peer in vrf table. +90/-40
- r14651: Harden include paths with __DIR__ +21/-21
- r14672: Correctly detect default poller wrapper graphs. +5/-4
- r14675: Prevent resubmit vars on ajax response. +13/-16
- r14677: Clean legacy alert associations after migrate. +13/-7
- r14679: Show message when X-API-Token or Query Parameter API auth is disabled in config. +11/-5
- r14684: Removed calls to OBS_AJAX constant. +7/-12
- r14687: Added option -l to snmpdump script for make dump locally without db connect. +12/-2
- r14708: Missed case insensitive pattern modificator. +1/-1
- r14712: Fixed scale for pressure sensors by BETTERBE-KOELMODULE-MIB. +4/-4
- r14728: Add transceivers navbar entry +15/-7
- r14755: Minor cleanup in lookup/keypress handlers for navbar search.
- r14782: Reduced include file checks in
include_device_mib_functions(). +2/-3
- r14789: Improved validate alert test id on page. +14/-4
- r14817: Extended mibs discovery for new os types. +7/-7
- r14820: Clean display timezones in about page. +2/-1
๐ Library Updates:
- r14569: Added IPLib
v1.22.0
- r14575: Removed unused pear Net_IPv4 and Net_IPv6 files.
- r14595: Updated Parsedown and ParsedownExtra libs to latest.
- r14596: Restored own prevent xss check in Parsedown lib.
๐งน Code Cleanup:
- r14549: Removed debug in js console log. +2/-13
- r14566: Use explicit pattern delimiter in regex test conditions for mib definitions. +16/-16
- r14590: Removed unused doT js lib. +3/-7
- r14602: Moved FS-SWITCH-MIB and FIBERSTORE-MIB definitions to common include. +364/-338
- r14603: Removed duplicate definition for FIBERSTORE-MIB. +0/-1
- r14609: Removed hack for generate ports where array in
build_ports_where_array_ng(). +19/-52
- r14632: Removed an accidental change in initial db schema. +1/-6
- r14640: Fixed div close in data-pick. +1/-0
- r14691: Moved unix os group definition to unix include. +42/-42
- r14702: Removed unused mib files. +0/-35
- r14797: Fixed tooltip message for old python 2.x version. +3/-3
- r14812: Moved some os definitions to vendor based includes. +86/-58
๐ง Development:
- r14622: Added ability for store all device uptimes for troubleshoot device rebooted metric. +17/-10
๐ฆ Other Changes:
- r14585: Add alert checker enable/disable support across UI, API, processing, and styling +130/-16
- r14724: Broaden Uniview NVR support for OEM variants and skip placeholder IPC channels +51/-24
+50,950 added
-15,188 removed
35,762 net