Our New Featherweight Agent

Skylight learns how your app is performing by running an agent that instruments each request as it comes in. Built with efficiency in mind, our new Featherweight agent is now almost invisible, making it usable in even the most resource-constrained environments. Keeping our overhead low is extremely important, because it… »

What I Learned About Hunting Memory Leaks in Ruby 2.1

I recently spent a bunch of time deep diving into some mystery memory leaks in Ruby. They were persistent and annoying, though not devastating by any means—the kind we could get away with ignoring for a long while, but shouldn't. Spoiler alert: we let them hang out for longer… »

Rust Means Never Having to Close a Socket

One of the coolest features of Rust is how it automatically manages resources for you, while still guaranteeing both safety (no segfaults) and high performance. Because Rust is a different kind of programming language, it might be difficult to understand what I mean, so let me be perfectly clear: In… »

Sharing the Skylight Love

Today we launched a fun and hopefully rewarding referral program for Skylight. Give $50, get $50 (inspired by our friends at Slack). We're excited about being able to properly thank our enthusiastic users when they refer their friends. Much of our existing Skylight customer base found us via word of… »

Bringing Sanity to JavaScript UTC Dates with Moment.js and Ember Data

One "neat" (awful) feature in JavaScript is that it automatically changes dates to be in whatever timezone the user's computer is set to. This is great if you are building the online version of The Podunk Gazette and all your servers and users are in one town. Otherwise, it can… »

Bending the Curve: Writing Safe & Fast Native Gems With Rust

Last week at GoGaRuCo, I talked about how Rust bends the performance/safety curve and enables a whole new generation of high-level programmers to become systems-level programmers. That tradeoff loomed large when we started building Skylight. We knew that we wanted to process high-fidelity traces of every request, in order… »