Java Garbage Collection Logging with the ELK Stack and

Java programs running on JVM create objects on the heap. At some stage, these objects are no longer used and can pile up as “garbage” needlessly taking up memory. Replacing the manual process of explicitly allocating and freeing memory, the Java Garbage Collection process was designed to take care of this problem automatically.


Logging your Java Invocations with IOpipe

Want access to your AWS Java Lambda logs without leaving the IOpipe dashboard? We now support this in Java if you are using Log4j2 and TinyLog! You can now read your function logs right in the IOpipe dashboard. With this, you can now debug your invocations without needing to go to CloudWatch to read what was logged. You can read more about our logging support here.


A Java troubleshooting guide: network, memory leaks and threads

While the term ‘Java troubleshooting’ can apply to many, many scenarios, this post focuses on three particular long-standing Java production scenarios: a denial of service to a Java service endpoint, a memory leak, and troubleshooting a thread deadlock or race condition. Follow along as we use Java inside Docker containers to facilitate quick testing and show you how to use open source sysdig to quickly diagnose each troubleshooting scenario.


Monitoring Java using JMX and custom metrics

JMX (Java Management Extensions) is a set of specifications conceived to monitor and manage Java applications. To implement the JMX technology, you need to create and register MBeans (Managed Beans) as part of your Java code. Using JMX technology and tools, Java application developers can get the dynamic state of the application and use it for performance tuning, troubleshooting and debugging.


Sentry’s New Java Agent: Adding Context to Your Stack Traces

We’re enhancing the existing Sentry Java SDK with our new Java agent. The thing is — it’s still in beta, and we need your feedback. Once downloaded, the agent will enhance your application stack traces on Sentry by adding the names and values of local variables to each frame. Specifically, the agent provides much more detail about the current state of the application at the time of the error than you would usually have.


Monitoring Java applications: Memory usage, threads and other JRE metrics

In this post we will cover how to monitor the Java Runtime Environment (JRE). You will learn how to assess the performance of your Java application by profiling its memory usage, the garbage collector metrics, monitoring Java daemon and user threads and other fundamental JRE metrics. We will finish with a real Java JRE troubleshooting example using opensource Sysdig and Docker.