Make data accessible via APIs for custom processing
Application Insights sounds cool but I can't imagine having all my data locked up behind a portal without an ability to programmatically access it or at least download it for offline processing. I'm sure the portal is awesome but I'm also sure that there will be project-specific types of insight I need to get out of this data which the portal won't sufficiently support. Making data accessible outside the portal lets you get around that concern while continuing to improve the product.
Along with Application Insights reaching its General Availability milestone today (see https://azure.microsoft.com/en-us/blog/general-availability-of-azure-application-insights/), I am pleased to announce that the data access REST API is now available to everyone as a Public Preview at https://dev.applicationinsights.io/.
I want to thank the huge number of you who participated in the private preview and provide such valuable feedback!
Please continue to provide your feedback on the API at https://visualstudio.uservoice.com/forums/357324-application-insights/category/161985-api.
statuspage.io integration please
Thomas Andersen commented
It would be great to be able to control the granularity of the returned in the API. If not specified it could select the most appropriate granularity based on the selected period.
Thanks Delong. I'd love to get more feedback on this specifically...
Does anyone else have a favorite dashboard solution in which they'd like to see Application Insights integration? In addition to Geckoboard there are other solutions as well such as Leftronic, Cyfe, Numberics, Dasheroo, Statusboard, etc.
i want to see data in Geckoboard.
I want break down of events and metric by user.
list of users and their events
Being able to tie multiple session datum across different App Insights keys.. (using same session key) would be of great value. The different App Insight keys would represent different services, UXs and/or devices. This will help us to build even bigger global views on users' experiences across dependent services, UIs, etc. I can also see a use for creating an Application Insights API Apps that takes in a App Insights key; then we can use an event for the Trigger inside a Logic App to then run complex workflows.
We have multiple services with cross platform clients. We would want to see data that allows us to break down the usage pattern for the users, devices, and services. We would also like to be able to allow many people to look at the data that are internal to our organization without requiring them to even have an Azure account. We are a brand new service, so we would like to show the data compared between multiple instrumentation keys.
We basically need to bring alerts and their context in OpsMgr the scenario is to have the Operations people aware of issues and be able to set a quick first response to incidents. We also need to be able to collect uase and performance data in OpInsights to perform more analysis. Consider we need to aggregate more than one AppInsights account.
Doug Riley commented
We would like to have access to Application Insights data via REST services to pull detailed data around usage, performance and failures to use in our custom aggregate dashboards (KPIs). It is critical that we are able to provide a date/time range to pull a specific range of data.
It will be interesting to link somehow AppInsights metrics/data (probably alerts) with autoscaling scenarios
Scenarios I can think of include many data integration use cases where we want to co-mingle this data with our other monitoring tools to get end to end visibility. Specifically, we like to get bulk downloads of App Insights data periodically (every 5, 10, n minutes) via REST or SOAP which we then push into our aggregation server.
Kamran Ayub commented
Or at least an API for building an app against app insights :) Being able to quickly glance at key metrics (failures) on-the-go would be excellent.
Arun Vinoth commented
Links for Code sample for importing continuous export blobs to SQL DB. Power BI reports can be built on top of that.
Rudi Larno commented
Perhaps even provide an HTML Widget to show some data on an external site; having to log into the portal to see any sort of data from AI is rather cumbersome.
Joshua Weber - MSFT commented
You may want to take a look at the newly exposed Export feature for Application Insights: http://blogs.msdn.com/b/visualstudioalm/archive/2014/12/11/export-telemetry-from-application-insights.aspx.
Gopal Rander commented
Nice Idea. I was looking for something like this. It can help us in getting the data which is more meaningful to us. We can mine the raw streaming feed for various timed events and then calculate avarage response time for that event.
Agreed. It would be ideal to access this via an API so I could then comingle these analytics with analytics from other platforms which are not being monitored by App Insights.
Bret Grinslade [bretgr@MSFT] commented
This is a very valuable discussion. We are looking at the best ways to enable this kind of functionality. I take the thread to say that there are two main types of access. One, allow me to grab the curated data in the UI (as Kyle mentions). Two, pull out raw data for specific issues to do detailed analysis and mining.
Being able to download performance data is mission critical for post-mortem analysis and other analytical reviews which will define an effort of development and DevOps teams to work on further application optimization and stress test KPIs. Until then, it is very nice toy and I wish I could use. If I have to log all that data (which I do now) on-prem, then the need for this feature is greatly reduced and I wont be able justify paying for this service.
Shashank Bansal commented
Being able to access processed data i.e. stuff that gets shown on the portal would be more important (and probably safer) than getting lower level data.
This is true assuming the processing (aggregation) does not shield information away.
Bret Grinslade (MSFT) commented
Is the scenario more about getting lower level data and doing additional custom processing or accessing the data you an see in the portal via APIs (as Kyle mentions).
If it is both, which is more important to do first?