Logo of AppSignal

Menu

Engineering

Our team handles over 30 billion requests each month. We run a stack with Ruby, MongoDB, Rust, Go, React and are improving this all the time.

Post-mortem: April 19th, 2018

By Robert Beekman on

For the first time in years we lost customer data, here's how it happened.

read more

Rails' built-in cache stores:
an overview

By Jeff Kreeftmeijer on

Rails' cache stores can store the data in memory, Memcached, Redis, or even straight to disk. But which of the different cache stores is best for which situation?

read more

New GitHub integration

By Robert Beekman on

We've upgraded our GitHub integration to a new GitHub App.

read more

Rescuing exceptions in Ruby

By Jeff Kreeftmeijer on

A raised exception can be rescued to prevent it from crashing your application once it reaches to top of the call stack. In this article, we'll examine different ways to rescue exceptions.

read more

Russian doll caching in Rails

By Jeff Kreeftmeijer on

By nesting cache fragments, views are almost never rendered completely. Even when the data changes, most of the rendered pages are served straight from the cache.

read more

Understanding system load
and load averages

By Jeff Kreeftmeijer on

The load average tells you the load your system has been under. In this article, we'll discuss how it's calculated, how to read the returned values, and when to be alarmed.

read more

Fragment caching in Rails

By Jeff Kreeftmeijer on

Rails' built-in fragment caching is used to store pre-rendered view fragments, so they don't need to be rendered again unless their contents need to change.

read more

Exceptions in Ruby

By Jeff Kreeftmeijer on

An exception is a signal that's sent when the program doesn't know how to deal with a specific situation. In this introduction, we'll explain what exceptions are, and how to raise one, and how to rescue your app from crashes caused by exceptions.

read more

Understanding CPU statistics

By Jeff Kreeftmeijer on

When using a tool like top or checking your app's CPU usage in AppSignal's host metrics, the metrics are divided into multiple categories. What's the difference between "system", "user", "nice", "iowait" and "idle" CPU time?

read more

Benchmarking Ruby code

By Jeff Kreeftmeijer on

When working on an important piece of code in your codebase, running benchmarks to compare different implementations can give more insight into their execution speeds.

read more

Inspecting data in Ruby

By Jeff Kreeftmeijer on

Most exceptions are caused by unexpected data being passed to methods that work fine otherwise, so it's often useful to trace a piece of data through your application to find the cause of an error.

read more

Syntactic sugar methods
in Ruby

By Tom de Bruijn on

Ever hear about Ruby's syntactic sugar, but never knew what it meant or how to use it? In this article we'll explore just how we can use it to our advantage.

read more

More articles

Go back

Subscribe to

Ruby Magic

Magicians never share their secrets. But we do. Sign up for our Ruby Magic email series and receive deep insights about garbage collection, memory allocation, concurrency and much more.