* Fix some comment and documentation typos.
* Fix various entphysical page display issues.
- Resolve flickering during loading (missing liClosed for nested items).
- Clicking a sensor actually takes you to the matching graph now.
* Add a few nicecase() calls to clean up html page display.
* Create discover_entity_physical() function
- Add discover_entity_physical() function into includes/discovery/functions.inc.php
- This allows for an easy implementation of OS-specific entity-physical discovery.
- Update includes/discovery/entity-physical/entity-physical.inc.php to use the new function.
* Add power_consumed and power_factor sensors.
* Two new icons, make more entPhysical data visible.
* Pre-commit fix: blank line found at end of control structure.
* Add Schleifenbauer OS support.
* Now really fix the comment typo.
* Fix parsing mistakes.
* Add a generic count sensor.
* Make the Schleifenbauer discovery use count instead of state sensors.
* Don't place count sensor at the top, add sane limits for Schleifenbauer
* Finetuning the rrd_options, changing Schleifenbauer sensor names.
* Update schleifenbauer.svg
* optimize logo too
* add test data
* fix sensor value display (spaces break it)
* update entPhysicalIndex
* Fix issues cause by new location and other misc
fix some queries so we return devices with null locations
remove unnecessary query of all ports on ports page lists
make locations menu available to non-admins for the legacy menu
fix a few issues with the old network-map
* fix graphs
* fix oxidized query
- Fix location so it is a regular database relation (this allows multiple devices to be accurately linked to one location and saves api calls)
- Parse coordinates from the location more consistently
- Add settings to webui
- ~~Used [PHP Geocoder](http://geocoder-php.org/), which has lots of backends and is well tested. (also includes reverse and geoip)~~
- Google Maps, Bing, Mapquest, and OpenStreetMap supported initially.
- Default to OpenStreetMap, which doesn't require a key. They will liberally hand out bans if you exceed 1 query per second though.
- All other Geocoding APIs require an API key. (Google requires a credit card on file, but seems to be the most accurate)
- Update all (I think) sql queries to handle the new structure
- Remove final vestiges of override_sysLocation as a device attribute
- Update existing device groups and rules in DB
- Tested all APIs with good/bad location, no/bad/good key, and no connection.
- Cannot fix advanced queries that use location
This blocks #8868
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`
After you are done testing, you can remove the changes with `./scripts/github-remove`. If there are schema changes, you can ask on discord how to revert.
* add the poller for portactivity
* add the ability to get monitor ports for portactivity
* add the graphs for displaying stuff for the portactivity app
* add the portactivity app page
* update the docs for Portactivity
* remove extra line
* minor doc update for Portactivity
* add update_application line
* convert to use json_app_get
* convert curly brackets to square
* style fix
* remote error, errorString, and version after they stop being important so they are not processed
* add alert rule examples
* add the poller for portactivity
* add the ability to get monitor ports for portactivity
* add the graphs for displaying stuff for the portactivity app
* add the portactivity app page
* update the docs for Portactivity
* remove extra line
* minor doc update for Portactivity
* add update_application line
* convert to use json_app_get
* convert curly brackets to square
* style fix
* remote error, errorString, and version after they stop being important so they are not processed
* add alert rule examples
* remove dump of get_portactivity_ports function added during rebase
* update to the current json_app_get
* add portactivity snmprec
* add the portactivity test data
* whoops bad merge when rebasing... fix
* minor formatting cleanup and add a missing comma
* fix some odditities with what one of the tests is doing
* whoops... include the use for the exception
* set the response to okay
* attempt to make snmpsim array check happy again
* the json now lints
* more making metric testing happy
* one more update to make travis-ci happy
* now flattens arrays also add array_flatten
* rename array_flatten to data_flatten as pre-commit chokes on it as laravel has something similarly named
* go through and properly add all the metrics
* tested with the newest one and it works
* whoops, clean up json and remove prototype that was used when putting it together
* doh! make it happy with laravel now
* see if a minor changing in formatting for the numbers makes the polling unit test happy
* order them properly
* remove a comma
* a few more minor fixes
* Graph definitions
* Stacked.
* Add display
* remove old poll-log, add redirect
* Handle undefined data in graphs
* Standard pollers
* Change doc to send to the global poller module page.
* remove test code :)
* Link parent menu
* Update f5.inc.php
RRD file needs to be named bigip_apm_sessions for the graph to automatically appear.
* Update and rename bigip_apm_curr_sessions.inc.php to bigip_apm_sessions.inc.php
It seems that both this file and the RRD file need to be named bigip_apm_sessions for the graphs to appear automatically
* Create 270.sql
Missed this from the original pull request - the graph has to be named bigip_apm_sessions to automatically display
* Update html/includes/common/server-stats.inc.php
allow 6 icons wide on server stats
* sysname to ip config following
follow ip to sysname config option on csv export and graphs
* Revert "Update html/includes/common/server-stats.inc.php"
This reverts commit db10e46f04643b87ec6a600e013733382717e7d4.
* formatting
* syntax fix
too many brackets
* Update html/includes/graphs/multiport/bits_separate.inc.php
bad tab
* format_hostname
Use format_hostname to resolve the sysname.
* Update bits_separate.inc.php
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.
- [ ] 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`
After you are done testing, you can remove the changes with `./scripts/github-remove`. If there are schema changes, you can ask on discord how to revert.
While this creates the graphs under Apm for the F5s, there is no data. I can pull the data manually. Maybe I have the definition incorrect in includes/polling/os/f5.inc.php?
snmpget -m /opt/librenms/mibs/f5/F5-BIGIP-APM-MIB -v 3 -u <user> -l authPriv -a SHA -A <password> -x AES -X <password> <server> apmAccessStatCurrentActiveSessions.0
F5-BIGIP-APM-MIB::apmAccessStatCurrentActiveSessions.0 = Wrong Type (should be Counter64): Gauge32: 1245
or maybe it's because the OID has the incorrect type in it, although the result is actually correct.
* Use Laravel for authentication
Support legacy auth methods
Always create DB entry for users (segregate by auth method)
Port api auth to Laravel
restrict poller errors to devices the user has access to
Run checks on every page load. But set a 5 minute (configurable) timer.
Only run some checks if the user is an admin
Move toastr down a few pixels so it isn't as annoying.
Fix menu not loaded on laravel pages when twofactor is enabled for the system, but disabled for the user.
Add two missing menu entries in the laravel menu
Rewrite 2FA code
Simplify some and verify code before applying
Get http-auth working
Handle legacy $_SESSION differently. Allows Auth::once(), etc to work.
* Fix tests and mysqli extension check
* remove duplicate Toastr messages
* Fix new items
* Rename 266.sql to 267.sql
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`
When disabling or ignoring ports in the "Ports Settings" (http://<nms_host>/device/device=<device_id>/tab=edit/section=ports/) then the ports are still shown under the Port tab for a specific device (http://<nms_host>/device/device=<device_id>/section=ports/) and in the Overall Traffic Graph.
To keep the view and graph more clear, this change only shows the ports which are not disabled or ignored.
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.
- [y] 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`
Hi
This patch does add the MAX graph (AREA) for the Service graphs. And the Max numerical value is as well taken from the MAX RRD value instead of AVERAGE.
When scaling to larger amount of time, displaying like today the average only makes all spikes disappear, and the Max value does not make much sense.
I also added a color choice to *pinkify* the "Loss" graphs.
Exemple with HTTP graphs polling google:

PipoCanaja
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`
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`
PR 183 from librenms-agent contains the script to make this work
https://github.com/librenms/librenms-agent/pull/183
Use Log facility when Laravel is booted.
Update init.php so we can easily boot Laravel for CLI scripts. (and just Eloquent, but that may go away)
Move all debug setup into set_debug() function and use that across all scripts.
Log Laravel database queries.
Send debug output to librenms log file when enabling debug in the webui.
Allow for colorized Log CLI output. (currently will leave % tags in log file output)
** Needs testing and perhaps tweaking still.
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`
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`
This was previously a pull request that was closed#8721
Not sure why it was closed or if it was abandoned since the branch they had was deleted, but I just put everything back together along with some test data. Kudos to @centralscrutiniser for the code in the original request.
* Blue Coat device updates
* Blue Coat device updates
* Updated PHP code per @laf comments
* YAML update for Packetshaper
* SSL Visibility YAML and snmprec file
* Cleanup problematic MIB files which should not have been there
* Reset Packetshaper YAML to original
* Fixed typos and value bugs in inc files|added missing definitions.inc.php entries to display graphs
* Fixed SQL typo
* Corrected SQL file names
* Update 251.sql
* Poe Polling Code, Poe Graphs, and Huawei MIB
* Reverting the reindent done after pre-commit script
* Cleaning of code not used for Cisco IOS, removal of untested Procurve code, and restore of legacy generic code (tested with Cisco+huawei)
* Rename MIB file
* Rearranged duplicated code
* Cleaning of variable not used
* Cleaning of commented code after night validation in test environnement
* Cleaning after pre-commit.php comments
* test data with PoE oids for huawei 5720
* test data with PoE oids for cisco 2960X
* Blue Coat device updates
* Blue Coat device updates
* Updated PHP code per @laf comments
* YAML update for Packetshaper
* SSL Visibility YAML and snmprec file
* Cleanup problematic MIB files which should not have been there
* Reset Packetshaper YAML to original
* Added json test data
* Add support for Allied Telesis AlliedWare Plus products
- Uses mibs from 5.4.7-2.1 for AlliedWare Plus products
- Updates Legacy AlliedWare mibs
- Added Allied Telesis svg
* Remove unnecessary "trim" from snmpget
* Add new line to end of file
* Minor fixes for commit
* awplus: initial ntp commit
This isn't completely working, however initial patch of it partially working
* awplus: Add NTP support
- Fixed polling issues for awplus. Now offset and delay graphs work.
- html/includes/graphs/device/ntp_*.inc.php
-- Removed extra "\" from MAX count which showed up in Graph legend
- html/includes/graphs/device/ntp_delay.inc.php
-- Present legend in either seconds, or milliseconds (depending on vendor)
- html/includes/graphs/device/ntp_dispersion.inc.php
-- Present legend in either seconds, or milliseconds (depending on vendor)
- html/includes/graphs/device/ntp_offset.inc.php
-- Removed rrd minimum (-l 0). This is because offset can be below 0.
--- It's better for the graph to auto scale than set a fixed minimum to display here.
- html/includes/graphs/device/ntp_stratum.inc.php
-- Changed graph to go from 0 to max of 16. NTP Stratum can only be 0 to 16.
* awplus: Add NTP test data
* updated awplus ntp poller
* device: awplus convert NTP poller into seconds
* device: fix NTP graph formatting
* device: Improve NTP formatting
* device: unset awplus NTP variable
* fix formatting
* device: awplus change NTP from numerical OIDs to named
* device: update awplus ntp json tests
* device: fix cisco and awplus ntp database creation
* device: update awplus json
* Allow 'option' param in graph endpoint
* Update lint and update docs
* Uncomment api response
* Add imagedestroy on 'tobias_trim' section
* Add base64 to port endpoints also
* Increase description length in graphs
* Add SMART attr177, previously recorded, but not displayed
* Change the multi-graph titles to better reflect their content
* Change SMART attr numbers to a more human-friendly description
* Minor text corrections
* Move Billing/Bandwidth Graphs to common format, extract data generation to central function
* Add API functions to access billing graphs and graph data
* Scrutinizer fixes
* Fix transfer graphs with from/to
* Scrutinizer Fix
* Fix docs, transfer page and missing from API param
* Document and fix reducefactor, Add Graph Stats to Graph Data
* Standardise times in graphdata
* Fixed renamed function for History GraphData
* First basic support for graphing openbsd pf states
* Now openbsd pf state graphing actually works
* First basic support for graphing openbsd pf states
* Now openbsd pf state graphing actually works
* Wrong graph types for searches, removals and inserts
* Removed unused file "openbsd_pfstates.inc.php"
* Remove openbsd from filenames, make it more generic
* initial
* commited correct version of f5-ltm-inc.php
* cleaned up comments
* cleaned up formating for travis
* split GTM discovery from LTM discovery module
* removed blank line at EOF
* updated per comments
* changed is_file to rrdtool_check_rrd_exists
* changed is_file to rrdtool_check_rrd_exists
* changed is_file to rrdtool_check_rrd_exists
* changed is_file to rrdtool_check_rrd_exists
* changed is_file to rrdtool_check_rrd_exists
* Added check_load.inc.php.
* Combined load graphs. Removed extra backslashes from all graphs. Escaped backslash in mysql file.
* Added a note about local only service checks to the docs.
* powerdns dnsdist app support
* fix conflict
* added doc
* fix new lines
* alphabetic order
* no data manipulation on host side
changed rrd from gauge to counter
* Added CheckPoint SecurePlatform support
* Changed some issues
* Changed some issues
* Update splat.yaml
* Changed os name to secureplatform intead of splat
* Changed os name to secureplatform
* Changed some issues
* add the ZFS graphs
* And now the ZFS non-graph stuff.
Still need to move it over to using JSON.
* Now uses JSON.
* use stripslashes as SNMPD loves to slash up the JSON
* Document ZFS.
* very minor formatting cleanup
* minor formatting cleanup and remove a bit of code from when I was mucking around debugging it all
* Update polling and drop the firewalled bit.
Since fail2ban on FreeBSD has moved to using anchors, the previous
issue of it dreking all over its self is no longer a problem.
And AFAIK it has never been an issue on Linux.
This also makes this script more cross platform as well instead.
* change the name of the graph of the total banned so people don't have to remove old file
* go back to the original RRD and just shove U into the no longer data area