Operations | Monitoring | ITSM | DevOps | Cloud

Featured Post

From Signal to Action: Instrumenting Decision Latency in Kubernetes Incident Response

An alert fires. Checkout latency has crossed an error-budget threshold, the Prometheus rule is correct, and the page reaches an on-call engineer in under a minute. Then recovery stalls while the responder works through different questions. Which rollout changed? Who owns the failing path? Is the payment dependency degraded? Is rollback safe? Who needs to approve it? How do we know the system recovered?

Inside Kraken: Regression Testing With Traffic Replay

A readiness check should make a release safer. During one release validation, ours kept Kraken’s traffic replays stuck in Initializing until they timed out. The operator was asking Kubernetes for EndpointSlices. Its installed permissions did not allow that request. The code needed a real cluster, the generated permissions, and a replay trying to start before that mistake became obvious. Kraken put those pieces together during release validation.

Test and Mock GraphQL APIs Without Trusting the 200

Replay a GraphQL recording at the server that produced it, and every request comes back 200 OK. Here is one of those 200s, from a Session query whose recorded token has expired: A GraphQL server reports most failures inside a successful HTTP response, so any check that stops at the status code passes this request. And that is the second way GraphQL hides from URL-shaped tooling.

gRPC Mocks, Tests and Contract Checks From a .proto

Change one field in a.proto from double to string, and nothing complains. The code compiles, the deploy goes green, and a service still built from the old contract keeps answering with a double. Here’s what Go’s protobuf runtime does when a client on the new contract reads that answer: No error. risk_score comes back empty, and the nine bytes of the double are tucked away as unknown fields.

Monitoring Modernization: 6 Lessons for IT Leaders

Monitoring modernization doesn’t have to begin with a rip-and-replace project. For many IT teams, it starts with a specific need: better visibility, stronger historical context, more useful alerting, or capabilities their current tools simply don’t provide. From there, modernization can happen in stages.

Amazon WorkSpaces vs Amazon WorkSpaces Applications: What's the Difference and Which AWS Solution Should You Choose?

If you’re researching AWS desktop virtualization and application delivery services, it is likely that you have come across Amazon WorkSpaces and Amazon WorkSpaces Applications. While the names sound similar, these two AWS services address different requirements. Amazon WorkSpaces provides a complete cloud desktop, while Amazon WorkSpaces Applications focuses on securely delivering individual applications through AWS-managed application streaming.

Let's Encrypt Is Shortening Certificate Lifetimes

Let's Encrypt is cutting its certificate lifetimes in half, from 90 days down to 45 days by 2028. If your team still has a calendar reminder that says "renew the certs," this is the nudge to finally retire it. The change isn't purely a Let's Encrypt decision. It's part of an industry-wide shift driven by the CA/Browser Forum, and every publicly trusted certificate authority is heading the same direction.

The Cyber Security Arms Race

My content creator friends were eating well last week, figuratively. I would be very surprised if you didn’t hear about any of the security vulnerabilities that were disclosed last week. There were several high profile bugs that could lead to Remote Code Execution (RCE). The vulnerabilities for PHP were so widespread that governmental bodies were advising website owners to take their sites offline until they can implement the latest patches when they became available.

Removing decommissioned clusters from Icinga for Kubernetes

Clusters get retired. A test cluster is torn down, a workload moves to a new environment, a provider contract ends. Icinga for Kubernetes does not know about any of that. Since v0.3.0, several clusters can write into one shared database, and Icinga for Kubernetes Web shows them side by side. But stopping or uninstalling the daemon for a cluster leaves all of its data in place.