Observability Beyond Logging For Java Microservices

Monitoring distributed applications is best approached using a combination of tools. Luke Marsden describes how Prometheus, openTracing and Weave Cloud visualization cover the bases to establish root cause of problems in distributed applications.

User-centric Alerting

If something goes wrong in production, you want to immediately know the user impact. With that in mind, we created an automated alerting schema based on user-visible symptoms.

The Long Tail: Tools To Investigate High Long Tail Latency

Figuring out what's causing slow requests or ops can be tricky. Tom Wilkie shares the tools he used to investigate high long tail latency.

Kubernetes Rolling Upgrades One By One

Have a semi-stateful service running on Kubernetes and want to do rolling upgrades? Tom Wilkie outlines how to make deployments upgrade one by one.

The Red Method: Key Metrics For Microservices Architecture

Tom Wilkie shares Weaveworks monitoring philosophy and the three most important metrics to use in your microservices architecture.

Websockets Are Evil And Must Die

In previous blog posts I’ve mention my dislike for WebSockets. In this quick blog post I attempt to explain why. Unfortunately I think this raises more questions than it answers! Be aware, these opinions are my own. It’s the monitoring,...

Promql Queries For The Rest Of Us

Prometheus comes with its own query language called PromQL. It’s very powerful and easily allows you to filter with the multi-dimensional time-series labels that make Prometheus so great. But it can be daunting when you are faced with an...

Running Consul On Kubernetes And Monitoring It With Prometheus

We run a couple of replicated Consul services for Weave Cloud: one acts as a coordinator for the distributed WebSocket router backing Scope’s terminals feature, and the other for storing the state of Cortex’s consistent hash ring. This...

Aggregating Pod Resource (cpu, Memory) Usage By Arbitrary Labels With Prometheus

How would you answer the questions like “how much CPU is my service consuming?” using Prometheus and Kubernetes? In this quick post, I’ll show you how… First we need to think about where to get the information from. cAdvisor (from Google)...

Cloud Provider Options For A Container-friendly Environment

The advent Docker and containers, has simplified packaging, deploying and supporting applications. However, with this advancement come challenges, as you also need a robust environment in which to deploy the containers. And that requires...

Weave Mesh In Prometheus Alertmanager

tl;dr: Weave Mesh, an open-source gossip and CRDT communications library, gave the Prometheus Alertmanager exactly what it needed to be reliable and highly-available. As a former SoundCloud engineer, I’ve had the privilege of using...

Monitoring Your Kubernetes Infrastructure With Prometheus

In the last post in our series “Prometheus and Kubernetes”, Tom talked about how we use Prometheus to monitor the applications and services we deploy to Kubernetes. In this post, I want to talk about how we use Prometheus to monitor our...