Extensions
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

GEO MAP for Meraki Devices

GregOReilly
Advisor

I am looking for a way to present the Meraki Device Status metrics on a map/geo visual in the new dashboards.

Each device has these properties. I can also add Tags like country=france. 

GregOReilly_0-1762880495914.png

Has anyone worked this out?

10 REPLIES 10

DanielS
DynaMight Guru
DynaMight Guru

Hello @GregOReilly you have Latitude and Longitude which are the most important details to graph on a map. 
I attach some examples so you can play with this data and then create a DQL of your own with the data of the Meraki devices.

data
    record(flightNo="DT123", geo.location.latitude=48.2195335, geo.location.longitude=16.3784883), //Vienna
    record(flightNo="DT123", geo.location.latitude=41.3826807, geo.location.longitude=2.1770239), //Barcelona
    record(flightNo="DT456", geo.location.latitude=48.2195335, geo.location.longitude=16.3784883), //Vienna
    record(flightNo="DT456", geo.location.latitude=48.1379879, geo.location.longitude=11.575182), //Munich
    record(flightNo="DT354", geo.location.latitude=48.2195335, geo.location.longitude=16.3784883), //Vienna
    record(flightNo="DT354", geo.location.latitude = 51.509865, geo.location.longitude = -0.118092), //London
    record(flightNo="DT985", geo.location.latitude=48.2195335, geo.location.longitude=16.3784883), //Vienna
    record(flightNo="DT985", geo.location.latitude = 52.520008, geo.location.longitude = 13.404954), //Berlin
    record(flightNo="DT111", geo.location.latitude=48.2195335, geo.location.longitude=16.3784883), //Vienna
    record(flightNo="DT111", geo.location.latitude = 48.864716, geo.location.longitude = 2.349014) //Paris
| summarize by:{flightNo}, geo.location.latitude=collectArray(geo.location.latitude), geo.location.longitude=collectArray(geo.location.longitude)

Another example:

data
    record(latitude = 51.509865, longitude = -0.118092, value = 255),
    record(latitude = 48.864716, longitude = 2.349014, value = 72),
    record(latitude = 40.73061, longitude = -73.935242, value = 31),
    record(latitude = 35.652832, longitude = 139.839478, value = 84),
    record(latitude = -33.865143, longitude = 151.2099, value = 15),
    record(latitude = 55.751244, longitude = 37.618423, value = 66),
    record(latitude = 52.520008, longitude = 13.404954, value = 87),
    record(latitude = 41.902609, longitude = 12.494847, value = 48),
    record(latitude = 39.9042, longitude = 116.407394, value = 19),
    record(latitude = 19.432608, longitude = -99.133209, value = 5)

 

Remember to choose this type of graphs under visualization:

DanielS_0-1762881399618.png

 

Dynatrace Certified Professional @ www.dosbyte.com

GregOReilly
Advisor

Thanks for the your speedy response....so I can dynamically translate my LONG and LAT values into meaningful/workable map data?

 

GregOReilly_0-1762882338927.png

 

Yes sir, luckily you have the more important info just there. I have a case where I need to query an API by IP to retrieve Lat and Long.

Dynatrace Certified Professional @ www.dosbyte.com

We have the devices and each device already has the long and lat values as you can see. Can we perform lookup where we translate each value pair to a country/city?

I tried to add a tag country=france and this is not readable in the DQL/Metrics.

Yes, you can use the new Lookup data in Grail.

I've tried your part of data with random values to have an example for you.

DanielS_0-1762883649039.png

 

Dynatrace Certified Professional @ www.dosbyte.com

Brilliant - going to try this today!

Thank you - Greg

GregOReilly
Advisor

Thank you Daniel - this is fantastic! We now have a much nicer Meraki Dashboard that we had before!

 

GregOReilly_0-1762949860604.png

 

Great work!!!! Happy to see the results!!! Thanks,

Dynatrace Certified Professional @ www.dosbyte.com

GregOReilly
Advisor

I have actually another use case. Its simple, but effective.

Synthetic tests....lets say we have www.domain.co.uk and www.domain.ie.

Instead of mapping the location of the test agent - I want to map co.uk tests to the UK. And tests with domains .ie to Ireland. 

Would this be possible, perhaps if I add country= or location= to the tests?

I use https://ip-api.com/ with the IP address of the domain, and this site gave you lat and long to be used on the map.

Dynatrace Certified Professional @ www.dosbyte.com

Featured Posts