* 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
* search improvement for PortNac
* rename func
* style
* DB migration for timestamps
* style
* rules
* fix manually db_schema
* remove vlan only search for now
* add a bool column to ident historical nac entries
* add columns to the table
* queryByOui renamed everywhere
* age value instead of delete
* style
* style
* use Illuminate\Support\Facades\DB;
* tests fix
* module_tables.yaml
* dump model instead of tests/module_tables.yaml
* tests
* testVrp
* daily
* config
* display historical NAC entries in global view
* same for NAC device page
* nac tab on device/port view
* and display the tab link if necessary
* filter by port as well
* historical data in port tab
* formatters
* 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 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
* first draft
refresh time
refresh time
* return codes
style
style
* presentation
* Exception details
more
fix
fix
* add tooltips
fixes for dns display
* create WebUI config option
languages
* refresh data every 7 to 11 days, keep it 15 days max
* 'Ports' and 'Port' ARP table
* Stp page support
style
style
* fix dnsname column finding when vendor is added/removed
fix dnsname column finding when vendor is added/removed
* nac vendor column
nac
* filter fields to reduce size of AJAX reply
filter fields to reduce size of AJAX reply
* fix typo on dns column detection
* default enabled
* remove unneeded semi-colons at end of line
* fix SC2206: Quote to prevent word splitting/globbing
* fix SC2164: Use 'cd ... || exit' in case cd fails
* fix SC2004: $/${} is unnecessary on arithmetic variables.
* fix SC2155: Declare and assign separately to avoid masking return values.
* fix SC2124: Assigning an array to a string! Assign as array, or use * instead of @ to concatenate.
* fix SC2059: Don't use variables in the printf format string. Use printf "..%s.." "$foo".
* fix SC2076: Don't quote rhs of =~, it'll match literally rather than as a regex.
* fix SC1090: Can't follow non-constant source. Use a directive to specify location.
* fix SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined.
* SC2223: This default assignment may cause DoS due to globbing. Quote it.
* fix SC2164: Use 'cd ... || exit' or 'cd ... || return' in case cd fails.
* fix SC1117: Backslash is literal in "\n". Prefer explicit escaping: "\\n"
* better handling of branch comapre
* add missing local ver_73 from merge
* remove duplicate definition
* Improve migration to release update channel
Delay update until a newer release exists.
This prevents us from going backwards.
* a little clarification
* Clean broken VRF lite code
* Change DB table for route discovery
* Add VRF simple support
* add port_id to db and discovery
* static-fy the translation arrays
* sort and search cleaning
* Sorting refactor and validation
* formatItem shortened
* Handle ifIndex==0 meaning no next hop defined (MPLS)
* Sync all create/updates
* purge in daily
* remove old route table
* get rid of inetCidrRouteNextHop_device_id
* fix wonky column orders
* add route snmprec
* fix sorting by interface
* Move to new config
* rename to route the new table
* Properly display ipv6 compressed addresses
* Translation before merge ./lnms translation:generate
* Update manifest
* Device Groups rewrite
Updated web ui
Static or dynamic groups allowed
Alert rule query builder
Translation support
Permissions support
* cleanup, make relationship save, and validate it
* builder WIP
* rules builder and rules saving/loading
* Parse query builder to Laravel Fluent query
* Upgrade existing groups when editing.
Properly update only dynamic groups when polling.
* remove unused old code
Update API and other places to use Eloquent
* debug output in poller restored
* Fix up some things
creating static
improved validation
fix js error on creation
Fix static groups in polling
* hide pattern for static group
* Implement authorization
Use in the menu too
* update schema
* fix rollback
* Don't abort on invalid queries
* fixes to query builder
* add test data, looks like macros aren't handled (omitted them because groups don't use them generally)
* Add macro support for QueryBuilderFluentParser
* add test for macro that accepts value
* More space in forms
Retain rules when converted to static
no duplicate names allowed
* Better error feedback
Update related devices on save
* Add button icon
* format
* update docs
* fix tests
* Fix some QueryBuilderFluentParser issues with OR
updated/more test data
* Show device groups runtime
fix querybuilder.json format
* Store table joins in the rules to minimize polling time
Update group joins in daily.sh (and when they are saved)
* Update daily.php
* Add units to time
If the php update channel check fails, it returns an error code 255...
This isn't handled by daily.sh, so it doesn't update code at all.
If updates are disabled (0), skip.
If master (1) or in the php version jail do a git pull update
Otherwise update to the latest tagged release
This should give a "safe" fallback if php isn't working. Might cause flipping back and forth if the user's error isn't (or can't be) fixed by code changes.
* Migration script and data feeding
* Adding the columns in the GUI
* build schema
* update FDB test data
* Use of timestamps()
* ignore created_at and updated_at in tests, and regenerate test impacted
* daily.sh does the cleaning
* space cleaning codeclimate
* Use carbon instead of str-val
* handle when $fdb_entry->updated_at and created at are null
* handle when $fdb_entry->updated_at and created at are null (force travis rerun)
* Doc update
* Doc update
Allows ping checks at intervals not tied to the poller. Pointless if you are not alerting on device status.
I updated the rrdstep.php script to treat ping-perf files separately and made it so it only converts if needed.
Docs here: https://docs.librenms.org/Extensions/Fast-Ping-Check/
DO NOT DELETE THIS TEXT
#### Please note
> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.
- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)
#### Testers
If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
* Restore vendor contents even if composer is not available
Leave the code in both places for safety.
* Instruct users to use the wrapper instead of straight up composer...
* Prep for composer changes
* Update composer.json, composer.lock and a small update to phpmailer and Yaml
* Prevent accidental `composer update` runs
* Add --no-interaction to daily.sh
* Move install to php53 branch if running an unsupport version of PHP
* Update validate
* Move PHP version check after update check. This will prevent us from moving no update users to the php53 branch.
Hopefully if daily.php -f update fails it returns a non-zero and we can move them to the php53 branch still.
* Wiggle things around more.
* Also, send release installs to the php53 branch.
* Set notification error for old PHP version.
* fix: fix a couple of OS cache invalidation issues
Fixes issues where we might be using outdated os definitions.
* use Config and fix style issue
* only pull in settings from config.php (otherwise will possibly contain populated os config)
* feature: issue warning notification if php version is less than 5.6.4
rename set_notification function in daily.sh to set_notifiable_result
print output when a daily.sh process fails
* further notifiable clarification
* Update the notification message.
* make sure to remove the notification when updates are disabled
move the notification code into the php check
* Feature: Notify about failed updates, block detectable bad updates
Ability to post notifications when the update fails.
Detect and roll back updates that will cause broken installs. (Needs testing)
Add severity to notifications, critical (2) notifications will display a toast.
This will be used for removing in-tree dependencies and raising the minimum php version.
* Improve naming a bit add phpdoc to new_notification
In case multiple notifications are created, remove them all.
* Remove notifications when update is disabled.
* update travis to use db testing
* added missing index
* Where shebangs had no flags, updated them to use /usr/bin/env for cross-platform compatibility
Updated daily.sh to support FreeBSD (su has different args, replaced with sudo when not on linux)
* Added myself to AUTHORD.md as per contributor guidelines
* Set all platforms to use sudo rather than su
Re-added missing arguments to sudo