Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Nurturing API Platforms with API Analytics

132 views

Published on

As organizations rely more on APIs to drive business growth, the role of analytics becomes equally important. Analytics provide a way for different actors in an API ecosystem to learn about the adoption of APIs, consumption of applications, and other different metrics that show the direction of the API strategy and health status of the APIs underneath.

WSO2 API Manager analytics show different perspectives of the APIs deployed in WSO2 API Manager by providing dashboards to view operational, API, and application related statistics. Different stakeholders like DevOps, API creators, application developers, and API program managers can use these dashboards to see short-term and long-term traffic patterns, isolate errors, generate reports, and get notified about suspicious activities.

This slide deck explores different analytics capabilities and how to combine different views to derive useful insights about your business.

On-demand webinar: https://wso2.com/library/webinars/nurturing-api-platforms-with-api-analytics/

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Nurturing API Platforms with API Analytics

  1. 1. Nurturing API Platforms with API Analytics Oct 14, 2020
  2. 2. Hello! Rukshan Premathunga Tanya Madurapperuma Associate Technical Lead tanya@wso2.com rukshan@wso2.com Technical Lead
  3. 3. ● What and Why? ● Stakeholders ● Architecture ● Introduction to Analytics Dashboards ⦿ Analytics Dashboards ⦿ Dashboard Access Control ⦿ Dashboard Customization and Deployment ⦿ Custom Widget Generation ● Analytics Reporting Capabilities ● Discussion on Analytics Scenarios ● Demo ● Q&A Agenda 3
  4. 4. ● Multiple nodes in the API ecosystem ● Thousands of applications, API calls, users ● Numerous information passthrough ⦿ User locations ⦿ Devices ⦿ Applications and API ⦿ Multiple DC/Regions ⦿ Endpoints What is API Analytics? 4
  5. 5. ● Operational analytics ⦿ Alerting ⦿ Scaling/caching/regions ● Business analytics ⦿ Identify direction ⦿ Business growth ⦿ Strategies ● Developer analytics ⦿ Popularity ⦿ Performance ● Monetization Why Do You Need API Analytics? 5 © Trupp Global
  6. 6. ● Managers ● Architects ● DevOps Engineers ● API developers ● Application developers Analytics Stakeholders 6 © https://www.clipartmax.com/
  7. 7. Analytics Architecture 7 ● SSO enabled portals ● Separate runtime for worker and dashboard
  8. 8. Analytics Architecture 8 ● Gateway publishes an event when ⦿ A successful request happens ⦾ org.wso2.apimgt.statistics.request ⦿ A fault happens ⦾ org.wso2.apimgt.statistics.fault ⦿ Throttled out ⦾ org.wso2.apimgt.statistics.throttle ● WSO2 Siddhi engine is used for ⦿ Siddhi aggregation ⦿ Purging ⦿ Multiple sink and sources ● Analyzing in real time ● Siddhi aggregations support granularity level summarization
  9. 9. ● Traffic analysis ● API error analysis ⦿ Response code ⦿ Runtime errors ⦿ Throttling ● Performance analysis ● End user analytics ⦿ Device/browser/platforms ⦿ Geo location ● Developer analytics ⦿ API/Application/Subscription creation ⦿ Signup Available Analytics 9
  10. 10. Introduction to Analytics Dashboards
  11. 11. Analytics Dashboards 11 ● Business analytics ● Monitoring ● API analytics ● Application analytics ● Reports
  12. 12. ● Focus on business insights of APIs ⦿ Popular devices and regions ⦾ Localizations ⦾ Development ⦾ Promotions/Marketings ⦿ Monetization plans ⦿ Identify external systems and partnership ● Business growth ⦿ API usage ⦿ Increase of APIs/applications ⦿ Subscription creations ⦿ User signup Business Analytics 12
  13. 13. ● Support long term data ● Multiple analytics data ⦿ Top summary widgets ⦿ Both API and application analytics ⦿ Usage, traffic, performance, faults analysis ⦿ Geo location and user device ⦿ Drill down scenarios ● Targets admin users and managers ⦿ Admin users and users of internal/analytics role can view by default ● Ability to see analytics of any APIs, apps Business Analytics 13
  14. 14. ● Focus on operational aspects of the system ● Error analyzing and actions ⦿ Response code analysis ⦾ Predict application level errors ⦾ Predict API or backend level errors ⦿ Faulty (runtime errors) ⦾ Identify the faulty APIs and backends ⦿ Throttled out request ⦾ Identify the requirement of throttle policy levels ⦾ Identify the misbehaving applications Monitoring 14
  15. 15. ● API performance analysis ⦿ Latency breakdown of resources ⦿ Identify the performance degradation points ⦿ Take actions to mitigate performance issues ⦾ Inform developers about higher latencies ⦾ Identify performance pattern and take actions ⧁ TPS ⦾ Improve performance by ⧁ Introducing cache, regions ⧁ Vertical scaling(TPS, complexity) ⦿ Compare improvements across API versions Monitoring 15
  16. 16. ● Traffic analysis ⦿ Identify the pattern and take action ⦾ Sudden increase ⦾ Sudden decrease ⦿ Predict capacity requirement ⦾ Scaling API Manager system ⦾ Scaling backend system ⦾ Ensure limits with throttling policies Monitoring 16
  17. 17. ● Targets to admin users and managers ⦿ Admin users and users of internal/analytics role can view by default ● Displays short term data to take an action ● By default time ranged is fixed to per day and week ● Able to see analytics of any APIs, apps Monitoring 17
  18. 18. ● Focus on API analytics ● Targets to API developers ● By default API developers and admin users can view ⦿ Internal/creator ⦿ Internal/publisher ⦿ Admin ● Sub set of business analytics ● Publisher access control is applied on APIs ● Displays long term data API Analytics 18
  19. 19. ● Analyze traffic pattern ⦿ Popular APIs ⦿ Identify APIs to deprecate ⦿ Identify required subscription policies ● Identify the performance issues of APIs ⦿ Mediation path ⦿ Backend services ● Resource usage pattern ⦿ Create products with popular resources API Analytics 19
  20. 20. ● Focus on application-related analytics ● Useful to application developers ● By default subscribers and admin users can view ● Analytics of logged in user’s applications will be shown Application Analytics 20
  21. 21. ● Analyze traffic pattern ⦿ Popularity of the application ⦿ Identify required subscription policy ● Usage patterns of end user ⦿ Identify the application users, type of users (login platforms) ⦿ Identify the application throttling policies ● Fault analysis ⦿ Identify the faulty APIs of an application ⦿ Contact API developer/support team Application Analytics 21
  22. 22. ● Dashboard supports scope based access control ● Each dashboard supports the following permissions ⦿ View - view the dashboard and cannot edit or change the settings of a dashboard ⦿ Edit - can either edit the dashboard or view the dashboard. Editing the dashboard includes adding/removing widgets, adding/removing pages to/from the dashboard, changing the layout of the dashboard ⦿ Owner - have access to the Dashboard Settings page to change the dashboard access control ● Logged in user should have required scopes to view/edit/own the dashboard Dashboard Access Control 22
  23. 23. ● Customizations are not allowed in default dashboards ⦿ Permission changes are allowed ⦿ Dashboard name and URL are not allowed ⦿ Changes in dashboard design are not allowed ● Supports creating copies of dashboards ⦿ Duplicate options supports creating copies to perform desired customizations ⦿ Deploy the exported dashboard with the customization in required environments Dashboard Customization and Deployment 23
  24. 24. ● Required when ⦿ Creating new widgets ⦿ Customizing existing widgets ● Widget is a react component inherited from a parent widget ● Yeoman script to generate a widget skeleton ● OOTB support for UI charting libraries ⦿ VizGrammer and Victory ● Ability to use any desired charting libraries ● Easy deployment mechanism ⦿ Copy to <Analytics_home>/wso2/dashboard/deployment/web-ui-apps/analytics-dashboard /extensions/widgets Custom Widget Generation 24
  25. 25. Analytics Reporting Capabilities
  26. 26. ● Monetizations and billing requirements ● Share and analyze later ● Feed to different analytics systems Why Do You Need Reporting Capabilities? 26
  27. 27. ● Report dashboard ⦿ Per tenant data for the selected period ⦿ Data in PDF format ⦿ Content is customizable ● Export data in tabular widgets ⦿ Table data can be exported to CSV or PDF ⦿ Ability to select a custom dataset for the report ● Export current view ⦿ Supported in every widget ⦿ Screenshot of the current view to a PDF Analytics Reporting Capabilities 27
  28. 28. Demo
  29. 29. Question Time! 29
  30. 30. ● Download and try-out ⦿ wso2.com/api-management ● Slack Channel ⦿ wso2-apim.slack.com ● Github ⦿ github.com/wso2/product-apim ⦿ github.com/wso2/analytics-apim 30
  31. 31. wso2.com Thanks!

×