Posts

Showing posts from December, 2025

Demystifying Java Garbage Collection: Logs, KPIs, and Memory Behavior

Image
Azure SQL Monitoring Made Easy GC Analysis Made Simple: Understanding JVM Memory, KPIs & Log Analysis In this blog, I’ll walk you through how I personally analyze and optimize Java Garbage Collection using easy-to-understand examples and real-world insights. Table of Contents What is Garbage Collection (GC) JVM Memory Structure Why JVM Uses Multiple Generations Enabling GC Logs GC KPIs (Latency & Throughput) GC Graph Analysis & Takeaways What is Garbage Collection (GC) To understand Garbage Collection, we first need to understand what garbage actually means. In simple terms, garbage refers to objects that are no longer useful or are no longer needed by the application. Garbage Collection (GC) in Java is the process of automatically identifying and removing these unused objects fr...

Azure SQL Monitoring Made Easy: Utilization, Long Queries & Performance (High Level Overview)

Image
Azure SQL Monitoring Made Easy Azure SQL Monitoring Made Easy: Utilization, Long Queries & Performance (High Level Overview) In this blog, I’ll walk you through how I personally analyze Azure SQL Database and the key metrics that matter when diagnosing performance issues or preparing high-level utilization reports. This guide is simple, practical, and works whether your apps run on Azure VMs, App Services, or Kubernetes. 1. Checking Azure SQL Utilization The first thing I check is Azure SQL’s resource consumption. These metrics help identify whether the database is under stress due to CPU, storage, or IO pressure. Navigate to Azure Portal → SQL Database → Monitoring → Compute Utilization → Add Metric 1.1 CPU % Where: Add metric → CPU percentage CPU% shows how much compute your workload consumes CPU % i...