* service templates - move to blade - jellyfrog fixes - revert get to find and fix discovery lookup
* service templates - move to blade - wip
* service templates - move to blade - wip
* service templates - move to blade - deprecate delete_service_template
* service templates - move to blade - deprecate delete_service_template
* service templates - move to blade - deprecate remove_service_template
* service templates - move to blade - deprecate remove_service_template
* service templates - move to blade - fix permisson lookup
* service templates - move to blade - fix remove route
* service templates - move to blade - fix remove route
* service templates - move to blade - fix permisson lookup
* service templates - move to blade - fix permisson lookup
* service templates - move to blade - fix permisson lookup
* service templates - move to blade - fix permisson lookup
* service templates - move to blade - fixs
* service templates - move to blade - fixes
* service templates - move to blade - fixes
* service templates - move to blade - fixes
* service templates - move to blade - nullable input?
* service templates - move to blade - nullable input?
* service templates - move to blade - nullable input?
* service templates - move to blade - add selected for device group id and type
* service templates - move to blade - add selected for device group id and type
* service templates - move to blade - add selected for device group id and type
* service templates - move to blade - fix discovery response
* service templates - move to blade - fix device group index display
* service templates - move to blade - add delete to discover_service_template
* service templates - move to blade - add discover all button - function foobar
* service templates - move to blade - add discover all button - function foobar
* service templates - move to blade - add discover all button - function foobar
* service templates - move to blade - fixes
* service templates - move to blade - fixes
* service templates - move to blade - fixes
* service templates - move to blade - button fixes
* service templates - move to blade - button fixes
* service templates - move to blade - button fixes
* service templates - move to blade - attempt route fix
* service templates - move to blade - attempt route fix
* service templates - move to blade - attempt route fix
* service templates - move to blade - attempt route fix
* service templates - move to blade - fix discovery function
* service templates - move to blade - fix discovery function
* service templates - move to blade - fix return values - thanks SourceDoctor
* service templates - move to blade - attempt route fix
* service templates - move to blade - button variable fix
* service templates - move to blade - button variable fix
* service templates - move to blade - button variable fix
* service templates - move to blade - function fix
* service templates - move to blade - permissions fix
* service templates - move to blade - permissions fix
* service templates - move to blade - permissions fix
* service templates - move to blade - permissions fix
* service templates - move to blade - permissions fix
* service templates - move to blade - permissions fix
* service templates - move to blade - permissions fix
* service templates - move to blade - permissions fix
* service templates - move to blade - permissions fix
* service templates - add initial api - and model permissions fix
* service templates - add initial api - discovery too
* service templates - add initial api - discovery too
* service templates - merge fix
* service templates - api fixes
* service templates - api fixes
* service templates - remove bad fixe
* service templates - discover null? :)
* service templates - Policy requires Facade?
* service templates - Policy requires Facade?
* service templates - REVERT Policy requires Facade?
* service templates - REVERT Policy requires Facade?
* Revert "service templates - REVERT Policy requires Facade?"
This reverts commit 7752b3e4e5.
* service templates - clean up discover api call
* service templates - clean up discover api call
* service templates - clean up discover api call
* service templates - clean up discover api call
* service templates - clean up discover api call
* service templates - attempt route fix
* Revert "service templates - attempt route fix"
This reverts commit b48970351e.
* service templates - jellyfrog fixes - DeviceGroup relates to Service Template
* service templates - jellyfrog fixes - DeviceGroup relates to Service Template
* service templates - jellyfrog fixes - DeviceGroup relates to Service Template
* service templates - jellyfrog fixes - DeviceGroup relates to Service Template
* service templates - jellyfrog fixes - DeviceGroup relates to Service Template
* service templates - jellyfrog fixes - DeviceGroup relates to Service Template
* service templates - jellyfrog fixes - dbchanged - DeviceGroup relates to Service Template
* service templates - jellyfrog fixes - dbchanged - DeviceGroup relates to Service Template
* service templates - jellyfrog fixes - dbchanged - DeviceGroup relates to Service Template
* service templates - jellyfrog fixes - dbchanged - DeviceGroup relates to Service Template
* Revert "service templates - jellyfrog fixes - dbchanged - DeviceGroup relates to Service Template"
This reverts commit ef93315db5.
* Revert "service templates - jellyfrog fixes - dbchanged - DeviceGroup relates to Service Template"
This reverts commit 73af819a60.
* Revert "service templates - jellyfrog fixes - dbchanged - DeviceGroup relates to Service Template"
This reverts commit dd019c3105.
* Revert "service templates - jellyfrog fixes - dbchanged - DeviceGroup relates to Service Template"
This reverts commit 94aaaf7976.
* service templates - jellyfrog fixes - DeviceGroup relates to Service Template
* service templates - fix permissions
* service templates - db service_templates_perms
* service templates - fix permissions
* service templates - fix permissions
* service templates - fix permissions
* service templates - fix permissions
* service templates - fix permissions
* service templates - fix edit.blade missing parameters - still 403 :(
* service templates - jellyfrog -fix route and construct
* service templates - jellyfrog -fix route and construct
* service templates - jellyfrog -fix route and construct
* Revert "service templates - jellyfrog -fix route and construct"
This reverts commit ec1eea7a99.
* service templates - jellyfrog -fix routes
* service templates - jellyfrog -fix services lookup
* service templates - edit blade fixes
* service templates - edit blade fixes - service or services or template or serviceTemplate or service_template good luck
* service templates - edit blade fixes
* service templates - index blade fixes
* service templates - discover return fix
* service templates - remove return fix
* service templates - fix discovery api returns
* service templates - fix discovery api returns
* service templates - fix discovery api returns
* service templates - fix discovery - test
* service templates - fix discovery
* service templates - fix checkbox integer
* service templates - fix checkbox integer
* service templates - fix checkbox integer
* service templates - fix checkbox integer
* service templates - fix checkbox integer
* service templates - fix discover all
* service templates - fix discover all
* service templates - fix discover all
* service templates - fix discover all
* service templates - fix discover all
* service templates - fix discover all
* service templates - fix discover all
* service templates - fix discover
* service templates - fix discover
* service templates - fix discover
* service templates - fix discover
* service templates - fix discover
* service templates - move discover/apply to blade - last of the old functions - wip
* service templates - move discover/apply to blade - last of the old functions - wip
* service templates - move discover/apply to blade - last of the old functions - wip
* service templates - change all relevant to template for sanity
* service templates - inspection fixes
* service templates - inspection fixes
* service templates - inspection fixes
* service templates - murrant fixes - use createOrUpdate - add obervers - fix function call
* service templates - murrant fixes - add ServiceController store - not used
* service templates - murrant fixes - add Observers file)
* service templates - murrant fixes - correct ServiceController
* service templates - murrant fixes - fix observers load
* service templates - observer fix
* service templates - schedule discovery function call fix, cheeky, is this allowed?
* service templates - attempt route fix.
* service templates - attempt route fix 2
* service templates - blade route applyall missing url - ie the route lol
* service templates - blade route applyall missing url - ie the route lol
* service templates - fix routes - bingo!
* service templates - fix routes - bingo!
* service templates - fix blade missing quote
* service templates - jellyfrog fix - remove pluck
* service templates - missing template id on service update
* service templates - jellyfrog fix - add get
* service templates - fix service db defaults / null
* service templates - fix service update
* service templates - fix service update
* service templates - fix service update
* service templates - fix service devicegroup change - obsoletes service_template_change in servicesdb
* service templates - fix service devicegroup change - obsoletes service_template_change in servicesdb
* Add service templates - phpcs fixes - and attemp whereNotIn scope
* Add service templates - styleci
* Add service templates - styleci
* Add service templates - fix notindevicegroup scope
* Add service templates - removed service service_template_changed - not required for delete or update
* Add service templates - removed service service_template_changed - not required for delete or update
* Add service templates - murrant fixes - add protected casts - fix checkbox
* Add service templates - fix checkbox - attempt2
* Add service templates - fix checkbox - attempt3
* Add service templates - fix checkbox - attempt3
* Add service templates - fix checkbox - attempt4
* Add service templates - fix delete row selection
* Revert "Add service templates - fix delete row selection"
This reverts commit 4d9e4990f2.
* Add service templates - fix delete row selection
* Add service templates - fix automatic discovery
* Add service templates - fix automatic discovery
* Add service templates - checkbox - add hidden input
* Add service templates - checkbox - add old value back?
* Add service templates - checkbox - fix disabled
* Add service templates - checkbox - fix disabled
* Add service templates - service fixes - styleci
* Add service templates - make devicegroup required
* Add service templates - let Disable text wrap
* Add service templates - dont allow device group to be deleted when service templates exist
* Add service templates - dont allow device group to be deleted when service templates exist
* Add service templates - enable multiple device groups - wip
* Add service templates - enable multiple device groups - wip
* Add service templates - enable multiple device groups - wip
* Add service templates - enable multiple device groups - dbschema - wip
* Add service templates - enable multiple device groups - db migration - wip
* Add service templates - enable multiple device groups - db migration - wip
* Add service templates - enable multiple device groups - wip
* Add service templates - enable multiple device groups - wip
* Add service templates - enable service template Groups - relationships to device AND device groups
* Add service templates - styleci fixes
* Add service templates - styleci fixes
* Add service templates - fixes
* Add service templates - fixes
* Add service templates - fixes
* Add service templates - fixes
* Add service templates - fixes
* Add service templates - fixes
* Add service templates - fixes
* Add service templates - fixes
* Add service templates - db - primarykey issues
* Add service templates - fix migrations
* Add service templates - fix migrations
* Add service templates - fix migrations
* Add service templates - fix migrations
* Add service templates - fix migrations
* Add service templates - fix migrations
* Add service templates - fix migrations
* Add service templates - fix migrations
* Add service templates - fix migrations
* Add service templates - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - blade view - fixes
* Add service templates - misc update for travis build trigger
* Add service templates - restrict view to only show device/groups that have templates applied
* Add service templates - fix devicegroup update
* remove permissions table stuff
* Fix schema rollback
* fix style
* Update ServiceTemplateController.php
Co-authored-by: Tony Murray <murraytony@gmail.com>
* mempools to modern module
quick hacky hrstorage port
* port ucd-snmp-mib to Mempools
* Populate DB for ucd
Prep for yaml
* initial yaml attempt
* more complex conversions
fixes to YamlDiscovery, make leading $ optional and allow mib::oid format
* walk full tables and skip values
normalize percentages above 100
* handle precent only ones (specify total as 100)
* Move default polling out of YamlMempoolsDiscovery
* fixes
* Update test data hrstorage should be correct.
* perc_warn for hrstorage
* Host Resources, record buffer, cached, and shared
* Host Resources is always better, don't do both HR and UCD
* fix unix, include warning levels
* variable size
* consolidate skip_values
* define mempools schema
* number instead of integer
* more schema refactor
* one more skip_values reference
* throw error for invalid oid translation
aos6
* a* and Cisco
* updated test data
* update almost all hrstorage data files
* b*
* c* with test data
use standard cache for hrStorage
* use cache for storage module too
* hand bsnmp properly
* bdcom
* exclude total oid from yaml so it is not polled
May add a way to ignore this behavior and poll it, but I don't know if that is needed.
* automatically handle percent only values
* ciscowlc
* only poll used or free if we have used, free, and total.
* fix skipping
* the dlinkoning
fix find value when value "name" is numeric
* support numeric oids
* dnos/ftos attempt
* I guess we can't filter on total > 0
* edgecos
* e*
* f WIP
* f*
* gwd (aka g*)
* h* + procurve
* i*
* j*
* m*
* support 0% used memory (however unlikely)
* n*
* CISCO-PROCESS-MIB memory, share cache with processors module
* ignore mempools with invalid total
* p*
* quanta
* r*
fix raisecom mibs terribly broken
* s-z
* style fixes
* Move VRP back to PHP and make it actually work
* fix zynos
* update schema
* Update Cisco processor data for description bug fixes
* fix comware processors
* comware mempools with memory size
default precision to 1
* sophos-xg updated data
* hrstorage use ram size for buffers, cache, and shared
* Show memory available instead of free in device overview
* UCD, use same rrd format, store available instead of free in the db.
* Calculate availability for HOST-RESOURCES-MIB
* Convert UCD to standard polling
* rename old rrd files
* initial graph work
* graph WIP
* Graph looking decent
* Graph looking decent for hr
* remove old ucd_graph code
* handle availability mempool
more graph cleanup
* color adjustments
* remove accidental free calculation
* Update test data and fix corner cases
* fis pfsense
* update schema
* add default value for mempool_class
* fix whitespace
* update schema
* update schema correctly
* one more time
* fortigate_1500d-sensors missing oids
* Update docs.
* fix indent
* add implements MempoolsDiscovery explicitly to OS
* remove ucd_memory graph references
remove unused device_memory graph
* remove unused functions
* set devices with mempools to rediscover to prevent/minimize gaps
* use a subquery
* add overview graph
* port health mempools table
* Update device mempool
* only show overview if multiple
* Don't override user set warn percentages in discovery
* fix missed usage
* fix style
* Safety check to not rename rrd files incorrectly if migration has not been run.
* Fix overview percent bar and represent available and used on the bar
* missed an item to convert to mempool_class
* percent on the wrong side
* Special Ports to Global Settings
* customers_descr type fix
* add mix-manifests - move section
* move to webui :P
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Update alert_rules.json
Added devices unpolled alert template
* Update alert_rules.json
* Use coalesce to provide default value
* Update alert_rules.json
Co-authored-by: Tony Murray <murraytony@gmail.com>
* add OspfTos model to include ospfIfMetricEntry data (ospf interface cost)
* remove WIP comment
* add new model and db migration
* update OspfTos relationship to OspfPort and correct cleanup call
* add "Cost" to device\routing\ospf web UI interface
* updated db-schema test unit
* updated db_schema to resolve conflicts
* removed tos metrics from rrd ospf stats due to rrdcached errors
* reorder db_schema.yaml to match upstream
* readd ospf_tos to db_schema
* styleCI changes
* Capture OSPF test data
* add ospf unit tests for iosxr
* ospfAuthType
* update db_schema
* remove extra migrations
* add ospf tests for iosxe
* add ospf test to ios
* merge ospf_tos into ospf_ports
* update db_schema
* update ospf module unit tests for ios, iosxe, iosxr
* fix ospf_ports ospfIfMetricStatus column type
* update db_schema
* more efficient dropColumn in down() migration
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Added new authalgo support for SNMPv3
* Update 2020_07_27_00522_alter_authalgo_column.php
Fixed case
* Update addhost.inc.php
Fixed case
* Update snmp.inc.php
Fixed case
* Update db_schema.yaml
Fixed case
* Fixed SHA-* order to ascending
* Update 2020_07_27_00522_alter_authalgo_column.php
Fixed space
* Update db_schema.yaml
Fixed line to be of type string
* Update config_definitions.json
Fixed sorting
* Fixed test file case sensitivity
* Fixed rollback function
* SourceDoctor code for checks
* Fixed indentation issues on Travis test
* Update to re-trigger testing stuck on CLA step
* Added crypto-algo updates
* Incorporated suggestions from Jellyfrog
* Added documentation entry
* Fixed travis spacing error
* Fixed validations
* Delete snmpv3_version_compare.patch
Sorry, this one was not supposed to be there.
* Added poller evaluation
* Added poller comparison
* Fixed merge-conflicts
* Fixed typo in test unit
* code refinements
only can check on webui that it supports the algorithms, hopefully, the eventlog is enough to notify users of distributed pollers.
* style fixes and remove openssl setting
* fix device access
* fix missing migration column
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Implement locks in the file cache
* Replace custom locks
* implement restore lock
Used when re-hydrating
* remove legacy use statements
* Add class descriptions
* Fix style
* Default to database cache driver
* missed cache_locks table
prevent chicken-egg issue
* style fixes
* Remove custom file lock implementation
* missed items from file cache
* Update schema definition
hmm, other schema noise must be from manual modification as this is generated from a freshly migrated db.
* require predis, it is pure python, so no harm in adding
* and set predis as the default client
* All os detection now uses Yaml
Move OS detection code into the Core module.
Defer all OS with snmp queries.
Add snmpwalk option.
Port ubnt and mobileiron to yaml.
* Silly ide refactor
* Handle more signals
* Flush buffers before exiting process
This ensures log messages aren't lost
* Restart process before jobs have finished
If there is a very log running job it can cause service restart to
take over 5 minutes.
We tweak the order of things to make sure that running processes
continue, but nothing more is scheduled.
The worst case impact is that a pollling/discovery job gets
scheduled twice, but this should not be a big issue - this should
only occur at most once per day.
* Remove python 3.8 feature
* Ensure that processes from the previous invocation are reaped
* Correct typo's
* Attach subprocess descriptors to /dev/null
Occasionally, PHP would throw a fit and crash when its stdout went
away. To avoid this, we attach stdout to devnull.
This means we lost output of daily.sh - but this is already recorded
in $LOGDIR/daily.log
* Don't immediately schedule long running jobs
To avoid the situation where the maintenance reload happens or a sighup,
then a second long running job is immediately started, we wait
(`last_[poll/discovery]_timetaken` * 1.25) seconds before scheduling
any jobs.
* Add `psutil` to requirements
* Add support for "systemctl reload" to the unit files
* Add a fallback for systems that don't have psutil
* Reduce CPU load when psutil is not installed
* Don't avoid double polling by extending the timeout
This shouldn't happen due to locks
* Remove fallback option
* Remove extra variable
* Fix issue introduced during rebase
* Fix issue introduced when fixing issue introduced during rebase
* Make psutil optional
* new index in alert_log table
* codefix1
* codefix2
* added second index
* codefix
* Apply suggestions from code review
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Rewrite smokeping script to be an lnms command
* Add a default number of probes for smokeping
* Formatting fixes
* Refactor to simplify a couple of methods
* Fix a name collision when using more than 60 threads
* Simplify
* First pass at documentation
A few climate fixes too.
I'm a little dubious about the + LibreNMS fix - it could be included
in /etc/smokeping/config if it is really needed, but it sounds like
(looking at git blame) it's needed for if the script generates a broken
configuration file.
I'm thinking we should just not generate broken config.
* Improve testability and add some tests
* Load laravel to make translations available
* Second pass at documentation
* Fix brace
* Extend the device factory to include the type
Also adds a device group fake I created before I realised I didn't need it
* Mimic gen_smokeping.php a little more closely
* Update tests to properly verify old and new behaviour against each other
* Replace gen_smokeping with a wrapper
* Don't double whitespace
Render does this automatically.
Explicitly order by hostname too.
* Make faker less likely to generate duplicates
I tried adding a unique constraint here, but it didn't have the
intended effect.
Extending the hostname like this seems to work fine - I tried
generating 10 million hosts and got no duplicates, compared to
duplicates appearing with as few as 100 hosts without this
change.
A true fix would be to add an 'fqdn' fake upstream.
* Make the tests more robust
* Assorted bug fixes
* Style corrections
* Handle 'generic' devices
* Fix an issue that came up during rebase
Co-authored-by: Tony Murray <murraytony@gmail.com>
yaml os discovery now respects the os mib_dir definition
mib_dir now only allows strings, not arrays
changed schema validation to account for that
consolidated dell mibs, no reason for them to be spread out
* Add attach sysName to Prometheus option.
The value of put to prometheus can be added to sysName by setting the relevant parameter.
* Add attach sysName to Prometheus.
* Add attach sysName to Prometheus.
* Update resources/lang/en/settings.php
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Update settings.php
* Update settings.php
* Update settings.php
* Update settings.php
* Update settings.php
* Update zh-TW.json
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Disable rules from the default list
Too many rules in the default, disabling the customoid rules.
It is easy to add from the collection. Any other suggestions?
* remove bgp and default false
* removing $graphs global
* remove unused things
* fix some additional graphs
* Fix graphs persisting too soon
* correct name for poller module performance graph
* only one type of graph is used here
* Add a executable type to settings page
This allow us to validate the value is a valid executable
* Add a directory type to settings page
This allow us to validate the value is a valid directory
* fixes
* Change CORS implementation
allows for upstream integration of Laravel 7
* migrate config
* skip implementing patterns for now
* Expose settings to the webui
* Make db settings apply
* Device Availability Calculation
* Travis fix
* .
* schema corrections
* flexible duration
* travis
* .
* .
* .
* .
* remove not needed code
* line Text to RRD
* update humantime
* .
* only set up again if device was marked as down
* set RRD area transparency
* save uptime also, to keep last availability as good as possible
* file description correction
* look for outages even if uptime > duration