Azure API Management Metrics Chatbot

This chatbot will help to monitor usage, DAU (daily active users), most used endpoints, errors, and other metrics based on Analytics data from Azure SDK API Management rest API with help of Azure Functions
BUILD CHATBOT LIKE THIS ONE

I use Azure API Management (AAM thereof) to provide API.chat APIs to chatbot developers. One of the important parts of it is to monitor usage, DAU (daily active users), most used endpoints, errors, and other metrics.

To do so AAM provides an Analytics tab where all information aggregated. The problem here that this is usage analytics, not product analytics, and it's also not very convenient to use.

Azure provides Azure SDK and REST endpoint for API Management. You could use Azure Functions to build product analytics and setup daily reports into a chatbot with it.

Read more about this chatbot here.

-- CODE lang-markup -- <bot> <state name="Start"> <transition input="/report" next="Report" buttons="Today,Yesterday">Select or enter the day</transition> <transition input="*" next="Start" buttons="Report">echo: {msg}</transition> </state> <state name="Report"> <transition input="today" next="Start" action="http://contoso.azurewebsites.net/api/reports/daily?day"/> <transition input="yesterday" next="Start" action="http://contoso.azurewebsites.net/api/reports/daily?day=yesterday"/> <transition input="@(0?[1-9]|[12][0-9]|3[01])[\/\-](0?[1-9]|1[012])[\/\-]\d{4}" morphology="msg" next="Start" action="http://contoso.azurewebsites.net/api/reports/daily?day={msg}"/> <transition input="*" morphology="msg" next="Report">Invalid date format.</transition> </state> </bot>

To gather data from Azure AAM and to trigger daily reportrs two Azure Functions are used.

No items found.