mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
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.
92 lines
3.2 KiB
Markdown
92 lines
3.2 KiB
Markdown
source: Extensions/World-Map.md
|
|
path: blob/master/doc/
|
|
# World Map Configuration
|
|
|
|
LibreNMS comes with a configurable Geo Map based on World Map Widget to visualize where your equipment is located geographically.
|
|
|
|
### World Map Widget
|
|
|
|
World Map Widget, requires you to have properly formatted addresses in sysLocation or sysLocation override. As part of the standard poller these addresses will be Geocoded by Google and stored in the database.
|
|
|
|
Location resolution happens as follows
|
|
|
|
1. If `device['location']` contains `[lat, lng]` (note the square brackets), that is used
|
|
1. If there is a location overide for the device in the WebUI and it contains `[lat, lng]` (note the square brackets), that is used.
|
|
1. Attempt to resolve lat, lng using `$config['geoloc']['engine']`
|
|
1. Properly formatted addresses in sysLocation or sysLocation override, under device settings.
|
|
|
|
Example:
|
|
|
|
[40.424521, -86.912755]
|
|
|
|
or
|
|
|
|
1100 Congress Ave, Austin, TX 78701
|
|
|
|
|
|
We have two current mapping engines available:
|
|
|
|
- Leaflet (default)
|
|
- Jquery-Mapael
|
|
|
|
|
|
### World Map Widget Settings
|
|
|
|
- *Initial Latitude / Longitude*: The map will be centered on those coordinates.
|
|
- *Initial Zoom*: Initial zoom of the map. [More information about zoom levels](https://wiki.openstreetmap.org/wiki/Zoom_levels).
|
|
- *Grouping radius*: Markers are grouped by area. This value define the maximum size of grouping areas.
|
|
- *Show devices*: Show devices based on there status.
|
|
|
|
Example Settings:
|
|
|
|

|
|
|
|
|
|
### Offline OpenStreet Map
|
|
If you can't access OpenStreet map directly you can run a local [tile server](http://wiki.openstreetmap.org/wiki/Tile_servers). To specify a different url you can set:
|
|
|
|
```php
|
|
$config['leaflet']['tile_url'] = 'localhost.com';
|
|
```
|
|
### Additional Leaflet config
|
|
```php
|
|
$config['map']['engine'] = "leaflet";
|
|
$config['leaflet']['default_lat'] = "51.981074";
|
|
$config['leaflet']['default_lng'] = "5.350342";
|
|
$config['leaflet']['default_zoom'] = 8;
|
|
$config['leaflet']['group_radius'] = 1; // Device grouping radius in KM default 80KM
|
|
```
|
|
|
|
### Geocode engine config
|
|
```php
|
|
$config['geoloc']['engine'] = "google";// Valid options are google, mapquest or bing
|
|
$config['geoloc']['api_key'] = "abcdefghijklmnopqrstuvwxyz";
|
|
```
|
|
Google:
|
|
Pros: fast, accurate
|
|
Cons: requares a credit card even for free account
|
|
|
|
MapQuest:
|
|
Pros: free, no credit card required
|
|
Cons: inaccurate: most addresses are retured location at center of US
|
|
|
|
Bing:
|
|
Pros: free, no credit card required, accurate
|
|
Cons: Microsoft(debatable)
|
|
|
|
|
|
### Jquery-Mapael config
|
|
Further custom options are available to load different maps of the world, set default coordinates of where the map will zoom and the zoom level by default. An example of
|
|
this is:
|
|
|
|
```php
|
|
$config['map']['engine'] = "jquery-mapael";
|
|
$config['mapael']['default_map'] = 'mapael-maps/united_kingdom/united_kingdom.js';
|
|
$config['mapael']['map_width'] = 400;
|
|
$config['mapael']['default_lat'] = '50.898482';
|
|
$config['mapael']['default_lng'] = '-3.401402';
|
|
$config['mapael']['default_zoom'] = 20;
|
|
```
|
|
|
|
A list of maps can be found in ```html/js/maps/``` or ```html/js/mapael-maps/```.
|