Category: Technical Details

Error Report Analysis from the Command Line

Backtrace now includes a completely new storage and indexing subsystem that enables engineers to slice and dice hundreds of attributes in real-time easily so they can better triage and investigate errors across their ecosystem, all from the comfort of their command-line environment. When an application crash occurs, there are hundreds of data points that may be relevant to the fault. This can range from application-specific attributes, such as version or request type to crucial fault data such as crashing address, fault type, garbage collector statistics to environment data such as system memory utilization.

Read on to learn more how you can interact with Backtrace from the command line for crash report and error investigation.

Read More

Building a Go Debugger

Earlier this year we published a post titled Implementing A Debugger: The Fundamentals. This post gave an overview of debuggers, what they do, and how they work. In today’s post, we build upon this knowledge and talk about our journey of extending Backtrace’s debugger to support Go. Intro If you have the time and haven’t… Read More

Workflow Integrations

Think about the last time you pushed a release. Release cut, QA tests passed, and the monitoring games begin. Latency numbers, RPS, and CPU look normal, nothing to be alarmed of…An hour later, things start to break. Customers are calling in complaining about disconnects and the machines that are still up are overloaded. In moments… Read More

Post-Mortem Heap Analysis: TCMalloc

If you read our previous posts of [Memory Management Bugs: An Introduction (/blog/2016/08/03/introduction-to-memory-management-errors/) and Post-Mortem Memory Debugging, you have an idea how Backtrace may help debugging various memory errors. In this post, I will illustrate how it works under the hood with the example of TCMalloc, one of the memory allocators supported by Backtrace. TCMalloc… Read More

Performance Improvements for FreeBSD kernel debugging

We previously explored FreeBSD userspace coredumps. Backtrace’s debugging platform supports FreeBSD kernel coredumps too, and their traces share many features. They are constructed somewhat differently, and in the process of adding support for them, we found a way to improve performance for automated programs accessing them. Read on to learn how information is extracted from… Read More