Java for Rubyists

The Scout Java Application Monitoring Agent is under active development and we have a few spots open in our alpha program. Email support@scoutapp.com for access. For many Rubyists, Ruby is the first language that they learn and perhaps the only programming language that they know. Ruby provides an excellent gateway ... Read more

4 ways to get the most out of your Rails logs

Logging is the lowest common denominator of monitoring - it's low effort and low overhead. You can put ANYTHING into a log file (sans animated GIF memes - save that for Slack). The downside of being a logging addict: logs can quickly become a noisy mess. Digging through logs while ... Read more

The Curious Case of the StatsD Timer

Instrumenting our application with StatsD is easy, especially when we just stick to Counters and Gauges. These metrics return just a single value when implemented. When you get to Timers, however, StatsD steps up it's game and returns eight metrics. So let's explore the curious case of the timing metric. ... Read more

Kafka: "git branch" for production streams

I switched from SVN to Git for version control years back largely because it made experimenting a blast. Creating branches, viewing diffs, stashing - it was fun to veer off the highway and explore dirt roads. Making it easy to experiment on my dev box is great, but rolling those ... Read more

An intro to the Docker Stats API

If I was teaching Server Health 101, I'd start with four key metrics: CPU Usage Memory Usage Network I/O Disk Utilization The approach for fetching these metrics on Linux hosts is tried-and-true (hint: look in the /proc folder). However, I was curious about Docker Containers: where do I access these ... Read more

Implementing Docker event monitoring from scratch

Docker's API provides a ton of functionality around containers and images - but there is a hidden secret, one that is easy to miss in the documentation: Docker's API has the capability to report host wide events ! Container events like: die , restart & out of memory . With ... Read more

From MySQL full-text search to Elasticsearch

Migrating backend search technologies on a high-throughput production site is no easy task, but Vector Media Group was recently faced with this decision. With a popular client site struggling under the load of complex MySQL full-text search queries, they recently switched to Elasticsearch . I spoke with Matt Weinberg to ... Read more

Understanding disk inodes

You try creating a file on a server and see this error message: No space left on device ...but you've got plenty of space: df Filesystem 1K-blocks Used Available Use% Mounted on /dev/xvda1 10321208 3159012 6637908 33% / Who is the invisible monster chewing up all of your space? Why, ... Read more

From Ruby to Go: a rewrite for the future

During a team camp among the lofty peaks of Breckenridge, Colorado, we talked a lot about the future of Scout and monitoring in general. Big mountains and nature have a way of doing that. One thing that was getting our nerd juices flowing: Go . At Monitorima in May, it ... Read more

From MySQL+MMM to MariaDB+Galera Cluster: A High Availability Makeover

Kevin Lawver , President @ Rails Machine , is our guest author for this post. Few things feel worst than rolling out a High Availability (HA) system, then regularly seeing that system collapse. For our team at Rails Machine, that failing HA system was MySQL Multi-Master Replication Manager (MMM) . ... Read more

Start your free 14-day trial today.
No credit card needed.