OutageGraph generation

Solved
ClaudioReevas
Here to help

OutageGraph generation

Hi,

 

One of the biggest values on the Meraki portal is having an availability Graph per device and per network.

 

I've noticed that is generated from a particular object which uses a particular class called OutageGraph, I'd like to know how to get the availability or outage events per device to generate a calculation of the total time.

 

Thanks for any information you can provide.

 

<div class="OutageGraph fill-graph" style="position: relative; padding: 0px;">

    <canvas class="flot-base" width="270" height="30" style="direction: ltr; position: absolute; left: 0px; top: 0px; width: 135px; height: 15px;">

    </canvas>

    <canvas class="flot-overlay" width="270" height="30" style="direction: ltr; position: absolute; left: 0px; top: 0px; width: 135px; height: 15px;">

    </canvas>

</div>

 

1 Accepted Solution

I don't recall the dashboard API having ever gone offline.  Nothing is 100% - but lets assume its available will probably be greater than yours ...

 

You can make up to 5 API requests per second.

https://documentation.meraki.com/zGeneral_Administration/Other_Topics/The_Cisco_Meraki_Dashboard_API

"Note: API Call volume is rate limited to 5 calls per second per organization."

 

You can retrieve the status of every device in a single API call.

https://api.meraki.com/api_docs#list-the-status-of-every-meraki-device-in-the-organization

View solution in original post

8 Replies 8
PhilipDAth
Kind of a big deal
Kind of a big deal

I don't think you can.  The closest you could manage would to to capture events using syslog and then passing those events.

 

Actually, you could use the deviceStatuses to get the status of every device, and build your own from their.  You would need to poll to get this info.

http://dashboard.meraki.com/api_docs#list-the-status-of-every-meraki-device-in-the-organization

I've placed a test but I don't get events on the syslog server about connections and disconnections from AP's, i get other kind of events like urls and flows but never something telling me that the AP is connected or disconnected.

 

I've noticed there is no events like this logged on the syslog part of Meraki on the documentation, do you know some other documentation related to this?

 

https://documentation.meraki.com/zGeneral_Administration/Monitoring_and_Reporting/Syslog_Event_Types...

 

Best regards,

 

 

Hey @ClaudioReevas,

 

If you are looking at downtime, you'd probably be better off collecting information via SNMP than events.

You can check these out and see if they apply to your situation:

https://documentation.meraki.com/zGeneral_Administration/Monitoring_and_Reporting/SNMP_Overview_and_...

https://documentation.meraki.com/MR/Monitoring_and_Reporting/Monitoring_the_Wireless_Network

 

Hope this helps!

 

Giacomo

Please keep in mind that what I post here is my personal knowledge and opinion. Don't take anything I say for the Holy Grail, but try and see!
Appreciate who helps and be respectful of every opinion and every solution offered.
Share the love, especially the Meraki one!

Thank you for your reply.

 

I've put on work a configuration like you mention, but this have a problem, it need a initial state for the equipments to work, taking me to solve another problem first.

What I'm doing now is using the Dashboard API to get the status of the devices in one row and storing those responses on a server. This response takes less than a second to get and I'm polling the status every two minutes as I have only 250 Meraki devices on my Meraki network, but with 1,000 or 10,000 devices won't be that fast. This response for 250 devices takes about 45KB and I can get the response, this solution one also have a point of failure, in case a response arrives with a timeout, a 404, 50X or whatever other error is, I won't have the status of the 2 minutes timeframe and I need to store (if everything goes well) 720 responses per day for a weekly analysis later, this means power to process the information to show the report, and storage to have the historic information of the data as every analysis will take 5,040 responses to analyze with 250 devices (for now) and if I do it monthly it will take 22,320 responses in the months of 31 days (the longer ones).

The bad part of this is that I must have agreement of the customer that the status information of the Meraki devices will be every 2 minutes. 

This is what I've found for a solution, but I think Meraki have a better one as I can see the OutageGraph available on the Dashboard.

Going back to your suggestion,

1.-How did you get the initial status?

2.-What happens if that UDP (SNMP) message is not fully received properly on the SNMP server or is not retransmited in case of packet failure?

I'm trying to explore other options to achieve this and also help the Meraki community.

 

Best regards,

Hey @ClaudioReevas,

 

Thank you for the details below. It's really great to see this level of cooperation in the community and the willingness to help each other out! 🙂 

 

You are right, it sounds like quite an intensive elaboration to retrieve just the uptime; SNMP tends to be quite lightweight which is why I aimed to that first rather than going to an API. 

To answer your questions:

1- I'm not fully clear on what you mean with this. Could you please elaborate?

2- UDP being UDP, it will not prompt a retransmit or acknowledgements of having been received. As such you are supposed to lose the event. If, however, you combine SNMP with a continuous ping from the SNMP server, you would obtain a better picture as you could determine the status of the device (up or down) and also receive notifications via SNMP.  In my experience, as the SNMP events are particularly lightweight, they tend to still work well and the possibility of losing them is quite remote unless you have particularly awful performance on the link. 

 

Ultimately though, it all comes down to the mission criticalness of your network.

 

Giacomo

Please keep in mind that what I post here is my personal knowledge and opinion. Don't take anything I say for the Holy Grail, but try and see!
Appreciate who helps and be respectful of every opinion and every solution offered.
Share the love, especially the Meraki one!

1- I'm not fully clear on what you mean with this. Could you please elaborate?

Sorry for the delay on this response, but I think I found a way, we need the initial state to know if the device is online or offline or any other state, with a dashboard API this initial state is available for every meraki device.

 

I think the way to achieve this is to get the status from the API every x minutes. But this takes me to another questions

 

What is the availability of the API?

How much can I make requests to the API?

 

Best regards,

I don't recall the dashboard API having ever gone offline.  Nothing is 100% - but lets assume its available will probably be greater than yours ...

 

You can make up to 5 API requests per second.

https://documentation.meraki.com/zGeneral_Administration/Other_Topics/The_Cisco_Meraki_Dashboard_API

"Note: API Call volume is rate limited to 5 calls per second per organization."

 

You can retrieve the status of every device in a single API call.

https://api.meraki.com/api_docs#list-the-status-of-every-meraki-device-in-the-organization

Thank you Philip,

 

"You can make up to 5 API requests per second."

 

This is 24k gold for me 🙂

 

And yes, availability will depend on my services.

Get notified when there are additional replies to this discussion.
Welcome to the Meraki Community!
To start contributing, simply sign in with your Cisco account. If you don't yet have a Cisco account, you can sign up.
Labels