K8s Log Collection Using Loki and OTEL Collector

Logs are one of the fundamental pillars of application monitoring and observability. They are essential tools for debugging and troubleshooting—when something goes wrong, the first thing a software engineer typically does is check the logs. As a DevOps engineer, one of my key responsibilities is to make logs more…

Kubernetes Net Police: Network Policy

Kubernetes makes it easy to run and deploy applications inside a cluster, but with every convenience, there comes the need for limitations and controls. Kubernetes provides the Network Policy feature, allowing you to control network traffic and enforce network isolation between your pods and services. How can Network Policy help?…

Understanding Prometheus OpenMetrics for Better Monitoring

A major part of monitoring applications is managing the flow and wiring of data. When you deal with data, encoding, protocols, and standards come into play to make it easier to transfer, interpret, and ensure others can generate, send, or receive it seamlessly. As I mentioned before, every monitoring challenge…

Listen to Your Application Heartbeat: Black Box Exporter

Monitoring applications is a huge area in DevOps and SRE. You’ll encounter tons of data types, technologies, and tools, which can easily overwhelm you with questions like: What tool should I use? What data should I monitor? What kind of dashboards should I create? Where should I store the…

Review on 100 Go Mistakes and How to Avoid Them book

I've been using Golang as my primary development language for over two years. During this time, I've encountered many use cases and challenges with Go, and to be honest, it's my favorite programming language for backend development—especially for cloud-related projects. Go strikes a…

Make Gitlab & Jira good friends: External status checks

GitLab and Jira are widely recognized as powerful tools, extensively used by teams across various industries, including Scrum Masters, team members, and project managers. However, one significant challenge in using these tools is integrating them to synchronize tasks with the actual code written by developers. This integration allows teams to…