Is Azure Monitor a good store for custom application performance monitoring? RRS feed

  • Question

  • Looking for a good place to store performance events emitted by custom applications. 

    We have legacy applications that currently write out various run time metrics (SQL calls run time, api / http request run times etc) to local SQL DB.

    format:( source, event, data, executionduration)

    We are moving away from storing those in local SQL DB, and are now publishing those same metrics to azure event hub. 

    Looking for a good place to store those metrics for the purpose of monitoring the health of the application. Simple solution would be to store in some DB and build custom application to visualize the data in custom ways. 

    We are also considering using Azure Monitor for this purpose via data collector API (https://docs.microsoft.com/en-us/azure/azure-monitor/platform/data-collector-api

    QUESTION : We are looking for recommendation for accomplishing this task, perhaps any pitfalls to watch out for etc


    - each event is small (few hundred characters)
    - expecting ~ 10 million events per day
    - retention of 1-2 days is enough
    - ability to aggregate old events per source per event is important (to have historical run time information)

    Thank you

    Monday, November 25, 2019 4:29 PM

All replies

  • I have similar scenario, but i really think you can reduce that expecting events, you need collect everything?

    Reanalyze the cost if cost is a problem.. Because is a lot of events per day. Did you imagine 3 billions events per year?

    Monday, November 25, 2019 5:03 PM
  • not too worried about volume atm, partly since retention is not an issue. More concerned about visualization
    Monday, November 25, 2019 5:58 PM