* Add transceivers module
Move os specific code to OS
Fix errors and updated connector names
Add RouterOS, a lot less data there.
Add Comware
Add Exa, required a transformer function (mw to dBm)
Add Junos, revision was too short
Just starting on ui
Graphs, and more ui
some polling fixes
collapse header for small screens
refactor a bit
Missed graphs
Transceivers icon inline
Use @once on popup javascript
update db_schema.yaml
Don't show transceivers in basic view
basic view could use a review
Apply fixes from StyleCI
API functions
Comware don't fail if port is missing
Apply fixes from StyleCI
Add alert rules to collection
Device Overview
Attempt to fix bad alert rule, probably needs more
Fix up Comware and remove old sensors
Mark transceiver metrics without thresholds as Unknown
Routeros cleanup
Exa cleanup
Handle missing port
Graph allow filter by channel
More translations
Add transceiver graphs to port graphs
Add Cisco support, use entPhyscial module data if available
Fix OcNos divisors
Labels on transceiver page
Show encoding if available
Hacky OcNos port mapping
Fix up Junos optics and remove old sensors
FS switch support
Metric casts to prevent thrashing
Extra transform_function support
Add link to transceivers page from overview
Change default sort to group by type, then channel
move some code out of overview blade template
Fix bad type ocnos
Apply fixes from StyleCI
Add scales to graphs
Add some test data
Default sort order for metrcis in SQL applied by default
Transceiver metrics threshold manual settings via WebUI and API
Fixes to channels verbiage
Fix severity calculations
Add cable field for SM/MM/Copper
Apply fixes from StyleCI
update test data
Show DDM
Update DB schema file
Extend serial field to 32, even though devices shouldn't be able to have one longer than 16
Missing import
Add status field to database, that way we can support snmp implementations that only return an enum
Add missing files
Fix db_schema
Fix style
Fixes
Style fix
Work around phpstan issue
Update transceivers.blade.php
Missed getStatus() call
Prevent extra dots when channels are not changed
Update module to match upstream
Save ocnos metrics as sensors
Move to regular sensors
add entity physical index
Update UI to sensors WIP
Apply fixes from StyleCI
Forgot one change
Update ui to use sensors
Remove transceiver metrics
Remove metric os discover code
fs-switch pending
Remove transceiver metrics for fs-centec
Exa link up
Revert all test data
Fix up transceiver module interface
Remove unused Convert class
comware cache and transceiver type
Fix some transceiver metrics filtering and formatting issues
Consolidate display formatting
Coalesce commare hh3cTransceiverTable walks to prevent double walk
Use group to identify transceiver sensors
Fixup routeros
Fix up cisco
update db_schema
Small addition to docs
Improve overview layout and add graph popup
Update Junos
update css files
ddm should be nullable
Increase the field length for type and model
Cisco Improve detection when there is an intermediary container
Add transceiver test data
Apply fixes from StyleCI
Fix incorrect test data
Improve display formatting
Fix test data
Apply fixes from StyleCI
Fix up more data
Fix up more data
Fix incorrect return type in routeros
Update ocnos data
* Remove some remaining references to transceiver_metrics table
* add the poller
* save text status stuff
* add initial app page stuff
* add history table and start work on graphs
* checkpoint
* re-work the poudriere graph bits a bit more
* fix the poller and start work on the graphs
* polling fix
* more work on the poudriere stuff
* poke stuff with php-cs-fix
* add some more graphs
* more style fixes
* another style fix
* add more graphs
* add Poudriere docs
* add tests data
* some minor tests fixes
* a test tweak
* more test tweaks
* some more test tweaks
* tweak .data.build_info data .data.build_info to make the app data test saner
* derp... missed a item
* add app data
* checkpoint work for now
* polling should be good now
* re-work php-fpm some more
* re-work the php-fpm app page
* add php-fpm_v1_combined.inc.php
* add more graphs
* more work
* add last request cpu
* fix stats for pools
* more graph work
* update the docs for php-fpm
* more graph work
* more graph stuff
* graph stuff now done
* some style fixes
* another style fix
* remove a unneeded use line
* add new tests
* add some missing items to the test
* json fix
* remove start time and add data
* add nfs-shared.inc.php
* add nfs poller
* polling now works
* add nfs.inc.php page
* mount options works now
* format cleanup
* add some missing items to the stats
* commit work from last night so I can swap over to ldap
* add gauge support
* save the OS type for it
* more work on NFS stuff
* more nfs work
* display cleanup some
* more nfs work
* update docs for NFS
* add nfs_server_rpc
* style fix
* add snmprec file
* more test stuff
* data cleanup
* style cleanup
* more style fix
* another style fix
* add deleted_at
* add client_rpc_info_calls
* more test tweaks
* more tweaks
* set two items as gauges that should be gauges
* convert a few more things from counters to gauges
* a few more tweaks for NFSv4
* This commit changes two files in the LibreNMS repo, to enable polling of the ArubaOS OID that reports active vpn sessions.
The first file is the arubaos.yaml discovery file to enable polling of the following OID WLSX-USER-MIB::wlsxNumOfUsersVPN(OID: .1.3.6.1.4.1.14823.2.2.1.4.1.4.2.0).
The second file arubacontroller_vpnsessions.inc.php is a graphing file to allow the use of this sensor on a dashboard.
* Update arubacontroller_vpnsessions.inc.php
Added newline at end of file to follow style guide
* Update arubaos.yaml
Added newline at end of file to follow style guide
* keep {{ $index }} in the num_oid and index
* Update arubacontroller_vpnsessions.inc.php
fix to match the rrdfilename change
* Added test data
* Added test data
* Removed extra file
* added variant vmc json test data
* revert arubaos.json
---------
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* breakout handling of suricata extend v. 1 returns
* initial work for suricata 7.0.0
* add shared file for various Suricata related variables
* update handling for new Suricata stuff
* fix suricata rrd name bits
* update suricata app page a bit
* misc
* add a new v2 suricata graph
* more suricata v2 graphs
* fix app data for suricata
* more graph work
* fix initial graphs
* the page selector for suricata v2
* more cleanup for suricata stuff
* add more graphs
* add suricata_v2_pkt_drop.inc.php
* add suricata_v2_error_delta.inc.php
* add suricata app layer flows graph
* add app layer tx
* start work on bypassed
* add flow bypass stuff
* add suricata error stuff
* add more graphs
* more suricata v2 work
* ...
* add packets overview
* cleanup suricata_packets_overview.inc.php
* more work on the overview graphs
* error delta is now per second
* cleanup suricata_v2_app_layer_error_alloc.inc.php
* add new flow proto stuff
* add suricata_v2_flow_proto
* add new overview graph
* update v2 app layer flows graph
* more v2 graph cleanup
* suricata graph cleanup
* suricata_dec_proto_overview now works
* more graph work for suricata
* more graph work
* add another overview graph
* snmp fix
* add a new overview graph
* add a new over view
* more graph stuff
* more memory graphs
* tidy pages bit
* more work on decoder stuff
* more decoder work
* decoder stuff done
* cleanup suricata_packets_overview.inc.php
* appl layer tx work
* add app flow stuff
* fix suricata_v2_decoder__event__ethernet.inc.php
* fix suricata_v2_decoder__event__ipv4.inc.php
* fix suricata_v2_decoder__event__ipv6.inc.php
* add alloc error stuff
* more error related work
* more error stuff
* start work on internal errors
* add internal error graphs
* parser error stuff done
* more decoder work
* decoder icmpv4
* more decoder work
* ltnull done
* mpls decoder stuff
* nsh decoder work
* decoder ppp done
* more decoder work
* more decoder work
* more vlan work
* vntag decoder stuff done
* descr_len auto set for generic stats
* ipv6 decoder stuff done
* style fix
* style fix
* more style cleanup
* more suricata graph work
* fix require usage
* tweak drop info a bit
* add some checks for for with suricata 7.0.4
* more suricata tweaks
* fix sagan instance handling
* another minor fix
* fix improper munging
* rever something accidentally added to this repo
* add linux_suricata-v2.snmprex
* rename the metrics for instances from instance_ to instances_
* add linux_suricata-v2.json test data
* style fix
* minor munging tweak
* style cleanup
* some app data fixes
* remove a typo from test data
* add deleted_at and make sure discovered is numeric and not a string 1
* derp... json fix
* remove something accidentally added
* fix a small erorr in the test data
* add a missing variable to the test data
* try another tweak for suricata json test stuff
* derp... fix a type in the suricata poller
* revert a test data change
* re-order some the metrics in the test
* some more metric re-ordering
* add a missing status
* remove something that was accidentally added to this branch instead of another
* strcmp cleanup
* style fix
* Improved Latency graph
Store loss+jitter info in rrd instead of database
New graph icmp_perf (legacy ping_perf still valid referencing part of the newer data)
Delete device_perf table
* Change loss to an area so it is more visible
* Style fixes
* Cleanups from phpstan & tests
* exit_code fix
* Remove alert usage of device_perf
* Don't use magic __get
* Add test for bulkPing
Add host to previous tests
* style fixes
* Fix issue fping error responses
* add borgbackup poller
* add borgbackup app page
* add graphs for borg backup
* minor borgbackup graph fixes and cleanups
* don't use custom colors for borg backup
* add metrics
* add borgbackup to the apps page
* add borgbackup snmprec for v1
* add test file for borgbackup v1
* add borg backup docs
* various style fixes
* add a missing key to the test data
* $total_vars -> $to_total
* remove a accidentally added space to applications.md
* test tweaks
* add no_hourly option to generic_stats
* add some more options to generic stats and don't display hourly since it is not really useful for borg backup
* style fix
* Refactor MAC utils to a new utility class
* Apply fixes from StyleCI
* Inline functions
Add tests
Handle bridgeid format
* Apply fixes from StyleCI
* Dedicated code path for stp bridge parsing, and improve STP output a bit
* Correctly parse dot1dBaseBridgeAddress and don't store int in bool field
* trim any unexpected character from bridge addresses, add extra test data.
* better comment
* barsBridge can handle dot1dBaseBridgeAddress correctly now
* parseBridge, check for properly formatted mac first.
* update test data, empty data = empty mac
* Fix new usage after rebase
* import
---------
Co-authored-by: StyleCI Bot <bot@styleci.io>
* add munging to generic stats graph include
* add graph_uptime_days config def
* make it optionally changable now
* style fix
* remove the graph_uptime_days option
* rework into a json app and support the old style
* working now
* add health checking
* add some datapoints to make writing alerts easy
* add a few missing item for has checks
* rework the app page
* use the right var for id9
* print the self test log if we have it
* add a graph for the max temp
* display the max temp graph
* display the health pass in the disk list if we have the data
* fix legacy handling and set app as ok
* replace id190 and id194 with the more useful maxtemp graph on the apps page
* don't print the additional info area for legacy extends
* add id232
* add id252 graph support
* properly display id232 now
* do not display SSD graphs for non-SSD disks
* for legacy extends, make sure we don't have a bad line
* add missing label for Product value
* fix metrics
* rework the metrics stuff a bit more
* typo fix
* more smart metrics cleanup
* add exit info to metrics
* style cleanup and logic checking for when disks are all now fine
* fix checking for no more health errors
* update the docs for SMART for v1 and remove slightly pointless notes about useSN
* update the docs
* initial test stuff
* add missing tests for the legacy code
* save if it it is legacy or not
* style cleanup
* update the smart legacy test
* style cleanup
* more test tweaking
* some more style cleanup
* more test fixes
* correct the disk ID for the legacy test da0 -> Z304VCFY
* more tests update
* more test cleanup
* begin cleanup of the v1 tests
* more v1 test updates
* more tests for v1
* more test cleanup
* fix exit_nonzero and add unhealthy metric
* add smart alerts
* add the metric unhealthy to the stat test
* use app data for the smart-common.inc.php
* add poller for mojo cape submit
* mojo_cape_submit poller now works
* add app page for mojo_cape_submit
* add basic generic stat graphs for mojo cape submit
* general size stats graph for mojo_cape_submit
* make sure we update slugs that did not see anything submitted for them
* sort the slugs by sub count
* add app protos graph and sub top 12 graphs
* add mojo cape submit docs
* add tests for mojo_cape_submit
* add mojo_cape_submit to the apps page
* add string helper for mojo_cape_submit
* poke lots of stuff with php-cs-fixer
* remove a unneeded line
* add a missing metric and app data to test
* add logsize poller
* add set size info
* add more stats
* add min size
* more logsize files
* add logsize
* fix creating log file links
* add two new graphs
* add some graphs
* add no_minus_d
* add no minus d to app page
* add count of log files
* save logsizes in app data
* rename title log sizes
* only show top 12
* add mean median and mode
* cleanup naming a bit
* the values for the files hash is now a int instead of another hash
* add new stats and correct median name
* now properly handle unseen
* fix logsize bits
* add combined
* update metrics and add some tests
* add logsize graphs to apps page
* add the logsize bit
* add logszie docs
* add some example alert rules
* style cleanup
* more style cleanup
* fix a few things for metrics and update the test
* fix a variable name in the test and update the data
* add suricata_extract
* convert from dervive to gauge and use delta
* add suricata_extract to includes/html/pages/apps.inc.php
* graph cleanup
* add sub_size
* add sub_size graph
* add docs for suricata extract
* add tests for suricata_extract
* add rules for suricata extract
* minor test tweaks
* add privoxy
* various style fixes
* cleanup option bar
* save metrics for privoxy now
* add instructions for privoxy
* add privoxy test data
* regen the test data
* add a few missing depends to the instructions
* add apps.inc.php entry for privoxy
* note the required log settings for privoxy
* style fix
* code stuff done for Sneck
* whoops, correct the abs value post adding it post rrd update
* return a array for getting the sneck data and nicely print the raw return value
* add test stuff and freeze time at 1650911765 for tests
* move the freezeTime
* add use Illuminate\Support\Carbon;
* more test changes
* rework freezeTime a bit more
* more test stuff
* another test
* rework it a bit again
* correct variable spelling for $time_diff
* remove freezeTime as we are using a old version of Laravel
* finalize graphs
* misc
* finalize sneck page
* mve the sneck tests as it needs a newer version of laravel than we are using
* add documents for sneck
* finalize the poller
* formatting cleanup
* correct comment type
* correct the spelling of description
* more documentation
* save the check returns as metrics
* add some more examples
* fix some of the sneck alerts and add a few more examples
* turn off time to polling by default
* suggest using ntp if enabled
* since we are zeroing time_to_polling by default, this now works
* backout some suggested changes for once we change to larval 9
* remove del_sneck_data as it is no longer used
* add more docs on the metrics
* php-cs-fixer to fix a few things
* update and fix sneck tests
* remote a metric from the test
* another minor tweak to the test
* one more minor change
* ahh! derp! think I found it finally... hopefully hanging this for the last time...
* now use app data
* now logs check changes
* add a missing )
* add a missing )
* some style fixes
* update the sneck page use to the app data stuff
* update the poller to use the new app data
* misc
* update sneck to log check status changes
* correct alert log messages
* correct a comment
* fix metrics
* derp, another fix
* test fix
* re-order to avoid warning
* poller update
* update sneck graphs
* update sneck graphs
* remove a unneeded line
* test update for discovery
* minor tweaks to the test and fix update the polling a bit
* style fix
* fix return data printing
* fix the test data to include app data
* attempted test fix
* add config def to apps.sneck.polling_time_diff
* cleanup docs a bit
* minor config tweaks
* minor doc cleanup
* add linux_softnet_stat poller
* add graphs and app page for linux_softnet_stat
* fix polling
* rename a few items, clean up the app specific page, and add to the apps page
* convert from derive to counter
* save the budget and budget_usecs to app data
* display current value of the budgets
* now track budget values
* add tests data
* rename it
* add docs for Linux Softnet Stat
* re-order and add budget for app page graph order
* style fix
* correct data location
* fix metrics for the json
* add alerts for ZFS
* add initial l2 bits to the poller for zfs
* more minor tweaks to the ZFS poller
* more zfs bits
* add new ZFS graphs
* begin adding L2 stuff
* add linux_zfs-v3 bits
* update zfs app page
* style fix
* update the data for the zfs legacy test
* test update for zfs v1
* fix some zfs tests
* more zfs v3 test cleanup
* another zfs v3 test data fix
* more zfs v3 test data cleanup
* more test tweaks
* Added support for user timezones and user browser timezone byt default
* Formatting fixes
* Use the timezone for alert log display
also added validation for the timezone because it's being used in SQL.
* Formatting fixes
* Added return type
* Formatting"
* Update the latency graphs to use the user timezone
* Simplify the web routes config
* Update phpstan to ignore type error
* Fixed up the phpstan config
* Reverse phpstan change
* Re-apply phpstan override
* Remove the option to unset the session timezone
* Formatting fix
* Update outge and event logs to use session timezone
* Fix route for the timezone control
* Made the timezone more dynamic
* Fix a logic error that was stopping the timezone from being set automatically on login
* Prevent getPref from being called twice
* again prevent getPref double call
* getPref double call
* Fixed typo made during merge
* Fixed merge error in phpstan-baseline.neon
* Change spaces to tabs in phpstan-baseline.neon
* Update error count
---------
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Fix undefined constants
These have been broken for a long time. Likely they are unused.
* Fix undefined constants
These have been broken for a long time. Likely they are unused.
* Refactor common billing code into a namespace
Prevents issues of usages where the code hasn't been loaded.
* remove redundant Billing in method names
* remove accidental duplication
* more use statements
* Style fixes