A trend in the past decade or so has been around the development of Application Monitoring tools that run in production to help developers, devops, operations teams, product leaders and product managers understand how an application or a set of applications are performing.
Not utilizing such tools can have a direct impact on customer satisfaction, decrease reliability or increase response times to incidents and can result in lost opportunity, lost sales or poor retention.
Some of these tools focus on user experience improvements, some on application performance monitoring (APM) and others on operational issues such as errors
In this post, we will explore the various tools that exist in the market today and what these tools offer and how you can decide what’s best for your business.
What exists in the market today can be broadly divided into the following categories based on what pain point the tools solve:
- Error or Exception Tracking (covered in this post)
- Log Management and Tracking (covered in part-2)
- Application Performance Monitoring
- Distributed Tracing
- User Experience Tracking
- Infrastructure Monitoring
Some tools have overlaps into other areas even though their primary focus is one thing.
We will go over the first in this post and subsequent posts will do a deep-dive into other individual categories.
What is Error or Exception Tracking?
Tracking errors or exceptions that are handled or unhandled in applications is critical in maintaining a high standard of software quality. Left unattended, these can start to impact customer experience and eventually sales.
Since logging in production systems are kept to a minimum to not affect performance, the primary fallback is to capture errors or warnings. This is where these tools shine.
It is not only important to detect these prior to rollout to production but to also monitor these in production when issues happen.
In the past, developers have resorted to scrounging log files to detect and track exceptions. These days, with the advent of error or exception tracking tools, developers or operational teams have a lot less to worry about.
Various tools take different approaches to the problem. Some require an SDK to be integrated, others need to have another operational system deployed alongside the application to monitor these.
What does exception tracking or error tracking get me?
- Centralized management – All errors or exceptions from all servers, devices in a single place. No more scrounging through logs or various tools such as Jira etc. Consolidate errors into a single cloud tool that works for you.
- Deduplication – The ability to group similar errors together, uniquely so you don’t miss out an error in the log when a lot of these are generated
- Impact and Prioritization – Understanding how an error or exception impacted customers, users, sessions and servers. Ordering of errors by the counts of users impacted or sessions impacted allows you to better prioritize which errors need to be addressed first.
- Segmentation – Allows you to segment errors by server, by region, by browser, by user, by session, by geo-location, by any custom segments or parameters and detect when an error peaks within a segment (like region or within a browser).
- Full Context – The ability to capture full stack or error traces from within the application both handled and unhandled. Most solutions also lets developers send or extract custom properties that provides more information like which user or session caused this error. This way a developer has fewer reasons to have to go through logs.
- Timeline views – The ability to track when the error happened and with what frequency
- Alarming – The ability to alarm or notify when an error peaks
- Integrations – The ability to automatically open a trouble tracking ticket in the tool of your choice when these issues happen
- Resolution and Regressions – The ability to mark errors as resolved and be notified if the problem were to recur, i.e. regressions
- Deployment Tracking – The ability to track deployments and to relate errors that happen with a particular deployment
The above are some of the key features that make up an error tracking tool. There are more advanced features such as segmentation, error correlation and a few more that we will be exploring in subsequent posts.
Introducing Trakerr.IO – as an error tracking tool
Trakerr is a new cloud tool that offers the ability for developers and product leaders a means to capture application errors or exceptions as well as some performance metrics side-by-side using Trakerr’s SDK.
Trakerr provides the ability to not just track errors but also some performance metrics such as latencies for calls to databases, CPU, memory usage and more with a little more work.
Integrating Trakerr.IO is simple in most languages.
Most languages offer a logging tool to log exceptions, Trakerr.IO directly plugs into these logging libraries and will be able to get you started tracking exceptions in a matter of minutes.
Trakerr.IO offers SDK’s in various popular languages to integrate your errors into Trakerr.
Who does it benefit?
Error or exception capture tools can be used by
- Developers or devops
This is obvious, developers get access to full stack traces or error traces along with contextual data like version, deployment, browser, OS, memory or CPU information with errors grouped together for easy bug tracking in production or other environments.
- QA or quality engineers
QA engineers track bugs using bug tracking applications such as Jira. When errors happen in applications, developers or QA create a new error in a bug tracking tool such as Jira for the developers to fix. This can become tedious and tools such as Trakerr offers the ability to automate this for you by automatically creating the errors in Jira.
- Product leaders, development managers
This is a little less obvious, but development managers and product leaders can get a birds eye view of errors happening in the application when an error or exception occurs. It also helps them prioritize the errors to fix first with the ability to view the number of customers or sessions that were impacted by a specific error.
- Operation teams
Operation teams often get good insights into operational issues that happen at various levels. Often this does not capture full information such as stack traces but merely error counts. Having access to full stack traces, the same ones that developers have access to will be incredibly useful to ensuring that all teams are on the same page.
- Product or program management teams
Product or program management teams care about the customers experience and with the ability of tools such as Trakerr to track how customers are affected by an error, product or program management teams can now track, improve and communicate progress of error fixes with customers to set their expectations.
Trakerr can integrate with many of the popular tools available in the market to make your life simpler.
Find out more, sign up for a free trial
Get started tracking errors or exceptions by signing up for a free trial https://trakerr.io/#/.
We would love to hear back from you on your thoughts on Trakerr, so please write to us at firstname.lastname@example.org