A Java troubleshooting guide: network, memory leaks and threads
Blog post from Sysdig
Mateo Burillo's blog post focuses on troubleshooting three common Java production issues: network bottlenecks, memory leaks, and thread locking, utilizing open-source tools like Sysdig for diagnosis. For network bottlenecks, the post explains how high request latency can occur due to factors like client request surges or software bugs, and it suggests using monitoring systems to detect anomalies in request handling. Memory leaks are addressed by demonstrating how to identify high memory usage and Java class loading through Sysdig, with a focus on detecting undetected leaks that can lead to crashes. The post also covers thread locking issues, such as deadlocks and race conditions, by using Sysdig to track process behavior and identify synchronization barriers causing CPU usage drops. While the examples provided are simplified, the post emphasizes the importance of adapting Java troubleshooting to modern container platforms and microservices, offering Sysdig Monitor as a tool to enhance system inspection and monitoring.