Monitoring Pokémon Go: When Your App Breaks All Records
August 03, 2016

Payal Chakravarty
IBM

Share this

In July 2016, the world of gaming was taken over by a new phenomenon – Pokémon Go. Within a matter of days "augmented reality" became mainstream and the app, which was launched mainly in the US and Australia, overtook Tinder and Twitter in the total number of downloads. Pokémon Go surpassed the wildest expectations of its creators, Niantic Labs, and then some.

With popularity comes scale, and with scale comes an overload of requests to the gaming servers. If you are not prepared enough, requests fail and users are frustrated. Frustrated with Pokémon Go crashes, laymen were talking about server status and memes were being created and circulated on social networks. Overnight, websites spun up just to report if the game was up or down in different countries. Being closely related to the APM space, my head was drawing up various ways in which Pokémon Go was perhaps addressing the issue and what monitoring they had to put in place to retain their popularity. Here is my list of probable solutions Pokémon Go could employ to improve the experience for their users and avid fans:

1. Synthetic monitoring

The first and most important question: Is the application up or down, and can users login from around the world?

A game this popular would need to ensure a five nine availability and high Apdex score. With synthetic end-user monitoring, simulated tests can be run from around the world to check for availability and response time as often every few seconds. The simulations can allow you to login to the app and interact with the app as a gamer would.

For example if a user is catching a Pokémon, he makes a HTTP request to an API “catchPokemon” with a set of parameters. Continuously checking if these HTTP requests return a valid response code within a reasonable amount of time ensures the “catching a pokemon” capability is functioning right. This ensures problems are detected and fixed proactively. Synthetic monitoring also helps determine if an issue was due to network latency.

2. Mobile Real User Monitoring

Pokémon Go is a mobile game that is accessed only from mobile devices. Hence Mobile End User Monitoring with crash analytics is imperative to rapidly scope the problem.

Data points – such as how often did crashes occur; what devices, OS and applications versions were being used when the crash occurred; and which geographies did the user come from – are extremely essential to isolate the problem. For example, insights such as “crashes between 6 and 6:30 PM PST were happening from iOS v9 users on West Coast specifically when users attempted to transfer a Pokemon” gives an instant problem scope to delve deeper into.

Further, by tracing individual requests, one can delve into exactly what line of code or what services/microservices could have impacted a particular crash. This data becomes even more insightful if it can be correlated with Twitter sentiment analysis.

A comparison between response time trends and throughput is also another good data point to evaluate if slow responses were due to extra load or an application bug.

3. Server, Database, Application Server Monitoring

In order to deal with scale, the infrastructure to support the game needs to be monitored to spot bottlenecks easily. This requires automatic discovery and health check of all the components that the game runs on.

Considering auto-scaling and high resiliency failover will probably be turned on to cater to the load, the discovery needs to be truly dynamic to track any new nodes that come up. A dynamically discovered topology could have multiple components such as application servers, web servers, databases, load balancers, content distribution networks etc. Memory leaks, CPU consumption, database I/O and space utilization, queues and deadlocks are metrics whose trends need to be monitored continuously with automatic baselines to help identify deviation from normal. Additionally, tracking and correlating log errors via log analysis from these various resources can help diagnose issues rapidly.

4. Predictive anomaly detection for the future

With sudden popularity, one thing that is bound to go out of control is a flood of alerts. To reduce alert noise and ensure that right issues are being worked on, there is the need to have intelligent monitoring alerts. Alerts should be generated based on analyzing, correlating and de-duplicating a set of events and should present sufficient information to enable faster debugging.

As an advanced setup, Pokémon Go monitoring should enable predictive anomaly detection to predict trends on capacity and consumption of backend resources much before they become issues.

Payal Chakravarty is a Program Director of Product Management for IBM Application Performance Management.

Share this

The Latest

March 21, 2019

Achieving audit compliance within your IT ecosystem can be an iterative process, and it doesn't have to be compressed into the five days before the audit is due. Following is a four-step process I use to guide clients through the process of preparing for and successfully completing IT audits ...

March 20, 2019

Network performance issues come in all shapes and sizes, and can require vast amounts of time and resources to solve. Here are three examples of painful network performance issues you're likely to encounter this year, and how NPMD solutions can help you overcome them ...

March 19, 2019

"Scale up" versus "scale out" doesn't just apply to hardware investments, it also has an impact on product features. "Scale up" promotes buying the feature set you think you need now, then adding "feature modules" and licenses as you discover additional feature requirements are needed. Often as networks grow in size they also grow in complexity ...

March 18, 2019

Network Packet Brokers play a critical role in gaining visibility into new complex networks. They deliver the packet data and information IT and security teams need to identify problems, recognize security issues, and ensure overall network performance. However, not all Packet Brokers are created equal when it comes to scalability. Simply "scaling up" your network infrastructure at every growth point is a more complex and more expensive endeavor over time. Let's explore three ways the "scale up" approach to infrastructure growth impedes NetOps and security professionals (and the business as a whole) ...

March 15, 2019

Loyal users are the key to your service desk's success. Happy users want to use your services and they recommend your services in the organization. It takes time and effort to exceed user expectations, but doing so means keeping the promises we make to our users and being careful not to do too much without careful consideration for what's best for the organization and users ...

March 14, 2019

What's the difference between user satisfaction and user loyalty? How can you measure whether your users are satisfied and will keep buying from you? How much effort should you make to offer your users the ultimate experience? If you're a service provider, what matters in the end is whether users will keep coming back to you and will stay loyal ...

March 13, 2019

What if I said that a 95% reduction in the amount of IT noise, 99% reduction in ticket volume and 99% L1 resolution rate are not only possible, but that some of the largest, most complex enterprises in the world see these metrics in their environments every day, thanks to Artificial Intelligence (AI) and Machine Learning (ML)? Would you dismiss that as belonging to the realm of science fiction? ...

March 12, 2019
As a consumer, when you order products online, how do you expect them to get delivered? Some key requirements are: the product must arrive on time, well-packed, and ultimately must give you an easy gateway to return it if it is not as per your expectations. All this has been made possible via a single application. But what if this application doesn't function the way you want or cracks down mid-way, or probably leaks off information about you to some potential hackers? Technical uncertainty and digital chaos are the two double-edged swords dangling over this billion-dollar ecommerce market. Can Quality Assurance and Software Testing save application developers from this endless juggle? ...
March 11, 2019

Of those surveyed, 96% of organizations have a digital transformation strategy, with 57% approaching it as an enterprise-wide priority, with a clear emphasis on speed of business, costs, risk, and customer satisfaction, according to IDC’s Aligning IT Strategies and Business Expectations for Digital Transformation Success, sponsored by EasyVista ...

March 08, 2019

One of my ongoing areas of focus is analytics, AIOps, and the intersection with AI and machine learning more broadly. Within this space, sad to say, semantic confusion surrounding just what these terms mean echoes the confusions surrounding ITSM ...