Application Engineering Platform

softwarebuck April 25, 2021 0 Comments



6. Application and Server CPU


If the CPU usage on your server is extremely high, you can guarantee you willhave application performance problems. Monitoring the CPU usage of your serverand applications is a basic and critical metric.Virtually all server and application monitoring tools can track your CPU usageand provide monitoring alerts. It is important to track them per server butalso as an aggregate across all the individually deployed instances of yourapplication.

1. User Satisfaction / Apdex Scores


The application performance index, or Apdex score, has become an industrystandard for tracking the relative performance of an application.It works by specifying a goal for how long a specific web request ortransaction should take.Those transactions are then bucketed into satisfied (fast), tolerating(sluggish), too slow, and failed requests. A simple math formula is thenapplied to provide a score from 0 to 1.Retrace automatically tracks satisfaction scores for every one of yourapplications and web requests. We convert the number to a 0-100 instead of 0-1representation to make it easier to understand.Retrace Satisfaction Chart

6. Application & Server CPU


If the CPU usage on your server is extremely high, you can guarantee you willhave application performance problems. Monitoring the CPU usage of your serverand applications is a basic and critical metric.Virtually all server and application monitoring tools can track your CPU usageand provide monitoring alerts. It is important to track them per server butalso as an aggregate across all the individually deployed instances of yourapplication.

Identifying key API metrics


Each team needs to track different KPIs when it comes to APIs. The API metricsimportant to infrastructure teams will be different than what API metrics areimportant to API product or API platform teams. Metrics can also be dependenton where the API is in the product life cycle. A API recently launched willfocus more on improving design and usage while sacrificing reliability andbackwards compatibility. A team that maintains an API that’s been widelyadopted by enterprise teams may focus more on driving additional featureadoption per account and give precedence to reliability and backwardscompatibility over design.In general, there are three to four teams that care about API metrics

Application Engineering/Platform


API developers are responsible for adding new features to APIs while debuggingapplication specific issues in the API business logic. These products could beAPI as a Service, plugins and integrations for partners, APIs incorporated ina larger product, or something else.

Product Management


API product managers are in charge of roadmapping API features, ensuring theright API endpoints are being built, and balancing the needs of customers(whether internal or external) with engineering time and personal constraints.

Infrastructure API metrics


Many of these metrics are the focus of Application Performance Monitoring(APM) tools and infrastructure monitoring companies like Datadog.

2: CPU Usage


CPU usage is one of the most classic performance metrics that can be a proxyto application responsiveness. High Server CPU usage can mean the server orvirtual machine is oversubscribed and overloaded or it can mean a performancebug in your application such as too many spinlocks. Infrastructure engineersuse CPU usage (along with its sister metric, memory percentage) for resourceplanning and measuring overall health. Certain types of applications like highbandwidth proxy services and API gateways naturally have higher CPU usage thanother metrics along with workloads that involve heavy floating point math suchas video encoding and machine learning workloads.When your debugging APIs locally, you can easily see system and process CPUusage via Task manager on Windows (or Activity Monitor on Mac) to see CPUusage. On a server though, you probably don’t want to be SSH’ing and runningthe `top` command. This is where various APM providers can be useful. APMsinclude an agent that you can embed in your application or on the server thatcaptures metrics such as CPU and memory usage. It can also perform otherapplication specific monitoring like thread profiling.When looking at CPU usage, it’s important to look at usage per virtual CPU(i.e. physical thread). Unbalanced usage can imply applications not correctlythreaded or an incorrectly sized thread pool.Many APM providers enable you to tag an application with multiple names so youcan perform rollups. For example, you may want to have a breakout of each VMmetrics like my-api-westus-vm0, my-api-westus-vm1, my-api-eastus-vm0, etcwhile having these rolled up in a single app called my-api.

API product metrics


APIs are no longer just an engineering term associated with microservices andSOA. APIs as a product is becoming far more common especially among B2Bcompanies who want to one up their competition with new partners and revenuechannels. API-driven companies need to look at more than just engineeringmetrics like errors and latency to understand how their APIs are used (or whythey are not being adopted as fast as planned). The role of ensuring the rightfeatures are built lies on the API product manager, a new role that many B2Bcompanies are rushing to fill.

7: API usage growth


For many product managers, API usage (along with unique consumers) is the goldstandard to measure API adoption. An API should not be just error free, butgrowing month over month. Unlike requests per minute, API usage should bemeasured in longer intervals like days or months to understand real trends. Ifmeasuring month-over-month API growth, we recommend choosing 28-days insteadas it removes any bias due to weekend vs weekday usage and also differences innumber of days per month. For example, February may have only 28 days whereasthe month before has a full 31 days causing February to appear to have lowerusage.

8: Unique API consumers


Because a month’s increase in API usage may be attributed to just a singlecustomer account, it’s important to measure API DAU (Monthly Active Users) orunique consumers of an API. This metric can give you an overall health of newcustomer acquisition and growth. Many API platform teams correlate API MAU totheir web MAU, to get a full product health. If web MAU is growing far fasterthan API MAU, then this could imply a leaky funnel during integration orimplementation of a new solution. This is especially true when the coreproduct of the company is an API such as for many B2B/SaaS companies. On theother hand, API MAU can be correlated to API usage to understand where thatincreased API usage came from (New vs. existing customers).Tools like Moesif can track both individual users calling and API and alsolink them to companies or organizations.

9: Top customers by API usage


For any company with a focus on B2B, tracking the top API consumers can giveyou a huge advantage when it comes to understanding how your API is used andwhere upsell opportunities exist. Many experienced product leaders know thatmany products exhibit power law dynamics with a handful of power users havinga disproportionate amount of usage compared to everyone else. Notsurprisingly, these are the same power users that generally bring your companythe most revenue and organic referrals.This means it’s critical to track what your top 10 customers are actuallydoing with your API. You can further break this down by what endpoints theyare calling and how they’re calling them. Do they use a specific endpoint muchmore than your non-power users? Maybe they found their ah ha moment with yourAPI.

Leave a Reply

Your email address will not be published. Required fields are marked *