* MAC Vendor OUI use scheduler
Add command to update `lnms maintenance:fetch-ouis`
Show vendor column in tables if mac_oui.enabled is set to true
Improve scheduler validation handle non-standard install directories and systems without systemd
Add index to table to improve speed and improve mac->vendor lookup speed
Scheduled weekly with random wait to prevent stampeding herd issues for upstream
drop oui update from daily
* MAC Vendor OUI use scheduler
Add command to update `lnms maintenance:fetch-ouis`
Show vendor column in tables if mac_oui.enabled is set to true
* Lint fixes and better prefix detection
* update schema file
* 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 vendor search and related functions
* Add OUIDB cache for vendor lookup
* Add vendor drop down
* appy style CI changes
* Apply style CI and lint changes
* more styleCI changes
* update type hinting
* Edit mac_oui cache lock name and function
* Update MAC OUI message during daily
* Use DB for vendor lookup
* New vendor_oui table migration
* New MAC OUI to database function
* Update readbleOUI to use DB rather than cache
* Make StyleCI changes
* styleCI tweak
* Remove lock release to allow refresh timer
* change migration name to match table
* add schema dump
* update schema
* styleCI tweak
* 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
* adding human readable version of /api/v0/fdb/{mac}/detail
* adding last seen field in human readable format
* fixing styling issue
* fixing another styling issue
* removing stale variable
* adding a limit to number of results returned in order to limit memory issues
* adding the documentation for fdb_detail api
* Wording fix
* wording fix again. smh
---------
Co-authored-by: Justin Lentz <monkeybrains7@gmail.com>
* 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>
* Convert the inventory page to Laravel
Fix several XSS issues (hopefully no new ones snuck in)
Small improvement to the SelectController to allow filtering by filterFields()
* style fixes
* Fix lint issues
* Fix part device filter
* Update print-alert-rules.php
* Update print-alert-rules.php
Was hoping to avoid word wrap with notify, but can't be avoided, so changing to notification
* 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
* Move `resources/lang` folder
* Shift registered middleware
* Remove `fruitcake/laravel-cors` dependency
* Streamline `$commands` property
* Upgrade to Flysystem 3.0
* Shift core files
* Convert `optional()` to nullsafe operator
* Remove unnecessary `$model` property
* Convert route options to fluent methods
Laravel 8 adopts the tuple syntax for controller actions. Since the old options array is incompatible with this syntax, Shift converted them to use modern, fluent methods.
* Convert deprecated `$dates` property to `$casts`
* Shift config files
* Default config files
In an effort to make upgrading the constantly changing config files
easier, Shift defaulted them and merged your true customizations -
where ENV variables may not be used.
* Bump Laravel dependencies
* Use `<env>` tags for configuration
`<env>` tags have a lower precedence than system environment variables making it easier to overwrite PHPUnit configuration values in additional environments, such a CI.
Review this blog post for more details on configuration precedence when testing Laravel: https://jasonmccreary.me/articles/laravel-testing-configuration-precedence/
* Fix error provider
* Match new symfony syntax
* Match upstream syntax
* Fix route syntax
* generate composer.lock
* Sync back configs
* routes
* composer
* Fix more flare
* fix cors
* sync lang
* Apply fixes from StyleCI (#14517)
Co-authored-by: StyleCI Bot <bot@styleci.io>
* bump larastan
* update packages
* wip
* Temporarily lower phpstan level
* Update phpstan.neon
* wip
* wip
* wip
* Apply fixes from StyleCI (#14592)
Co-authored-by: StyleCI Bot <bot@styleci.io>
* test
* Update CiHelper.php
* Update test.yml
* Update CiHelper.php
* Update CiHelper.php
* Apply fixes from StyleCI (#14616)
Co-authored-by: StyleCI Bot <bot@styleci.io>
* test?
* fix phpstan problems
* dont run snmpsim on github ci
* Fix whitespace
* More whitespace
* More whitespace ???
* I think the space broke it
* fix the reset of the whitespace
* hard code auth guard
---------
Co-authored-by: Shift <shift@laravelshift.com>
Co-authored-by: StyleCI Bot <bot@styleci.io>
Co-authored-by: Tony Murray <murraytony@gmail.com>
* fix cisco-qfp Division by zero
* fix percentage calc
* linting
* another zero in RRD. the (int) might be consequential errors and should hurt...
* no float for average_package
* Update includes/polling/cisco-qfp.inc.php
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Add floor
---------
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Correct PowerConsumed SI Units in Overview
Workaround to convert PowerConsumed SI Display Units from kkWh to MWh. Better way would be to directly save the data in Wh instead of kWh. But we don't know the impact jet.
* Fix style
* Poller perf: add per device
Fix min, avg, and current values
* Fix up previous
* Fix style
* Rename to device average, we don't calculate min and max, but rather the min/max of the average.
* inital commit of a new syslog sink over http
* cosmetics
* cosmetics fix...
* cosmetic fix again
* cosmetics fix again
* its nice now...
* add non blocking option
* Syslog Sink integrated as API PUT method
* lint fix
* Update includes/html/api_functions.inc.php
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Update includes/html/api_functions.inc.php
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Update includes/html/api_functions.inc.php
Co-authored-by: Tony Murray <murraytony@gmail.com>
* change to POST, fix decoding issue and json exception
* logstash/json documentation added. syslog documentation a bit re-structured
* lint fix
---------
Co-authored-by: Tony Murray <murraytony@gmail.com>