Author: Shai Almog
Developer Advocate at Lightrun. Co-Founder of Codename One. Java Rockstar, Speaker, Author, Blogger, open source hacker and pizza enthusiast
-
Spring Boot Performance Workshop with Vlad Mihalcea
Learn how to improve the performance of a Spring application and diagnose production problems. Lessons from our live workshop covering JPA!
Shai Almog -
Debugging jsoup Java Code in Production Using Lightrun
Scraping is a fragile discipline. As a workaround, we often use a server. Debugging these issues is remarkably difficult. Or at least it was!
Shai Almog -
Remote Debugging and Developer Observability
Connect to remote processes to solve bugs using remote debugging and observability. Learn how to securely scale debugging to match growth!
Shai Almog -
Debugging the Java Message Service (JMS) API using Lightrun
Due to their asynchronous nature and production complexities debugging messaging systems is remarkably hard… WAS remarkably hard…
Shai Almog -
Memory Debugging and Watch Annotations
RAM profiling has its strengths and weaknesses. The Debugger is a complementary tool to translate obtuse statistics to actionable changes!
Shai Almog -
Debugging Deadlocks and Race Conditions
Threading issues are a piece of cake with these simple debugger techniques. Yes, you CAN debug threads with breakpoints!
Shai Almog -
Modernize Legacy Code In Production: Rebuild Your Airplane Midflight Without Crashing
I spent over a decade as a consultant working for dozens of companies in many fields and pursuits. The diversity of each code base is tremendous. This article will try to define general rules for modernizing legacy code that would …
Shai Almog -
Spring Transaction Debugging in Production with Lightrun
We use annotations to denote transactional behavior in modern Spring, so we have no code, no failure, no debugging… But is this true?
Shai Almog -
Debugging Collections, Streams and Watch Renderers
Inspecting the data in the watch quickly is key to a fast and effective debugging session. Here’s how you can see the data that’s important!
Shai Almog -
Exception Breakpoint that Doesn’t Suck and a Real Use Case for Method Breakpoints
Dial your debugging skills to 11 by leveraging some of the lesser known capabilities for debugging highly complex systems such as filters!
Shai Almog -
Logging Best Practices: MDC, Ingestion, and Scale
Where should you add logs in a method? Should you log in this method? If so what should you include in the log? How to phrase the message?
Shai Almog -
Debugging JAXB Production Issues
Java Architecture for XML Binding (AKA JAXB API) is a popular API for marshalling XML data. It’s a framework for mapping between XML documents and Java POJOs (Plain Old Java Objects, AKA regular Java classes) almost seamlessly. The API is …
Shai Almog -
Spring Remote Code Execution Vulnerability
I’d like to start by saying that I’m not a security expert. I also won’t link to the exploit. This is a very fresh take on a new vulnerability but there’s already confirmation from Sonatype. The current exploit seems to …
Shai Almog -
Debugging Java Equals & Hashcode Performance in Production
Hashcode and equals are at the crux of many hard to nail down Java performance issues. Here’s how to track these in production!
Shai Almog -
Debugging Race Conditions in Production
Debugging race conditions is hard, unfortunately production environments are especially problematic for these kinds of problems!
Shai Almog -
The Basics Of Breakpoints You Might Not Know
In episodes 4 and 5 of “140 Second Ducklings”, I got deeper into the more advanced underpinnings of breakpoints. There’s still a lot more to learn to move forward, but even at this stage it’s surprising how many things are …
Shai Almog -
Interview with Tom Granot – Developer Observability, KoolKits and Reliability
In preparation for the upcoming Developer Observability Masterclass we’re hosting at Lightrun with Thoughtworks, RedMonk and JFrog, I sat down for a brief interview with Tom Granot – the Director of Developer Relations at Lightrun. Tom will MC the event …
Shai Almog -
Detecting, Investigating and Verifying Fixes for Security Incidents and Zero Day Issues Using Lightrun
Learn about major milestones in app security: finding the issue, evaluating a breach, proving it, and validating the fix!
Shai Almog -
Debugging Tutorial: Java Return Value, IntelliJ Jump to Line and more
There are so many features in control flow and debugging. This article scratches the surface of what’s available to us. When debugging classes, we need to be aware of all the tools at our disposal.
Shai Almog -
Introducing KoolKits: OSS Debugging Toolkits for Kubernetes
KoolKits (Kubernetes toolkits) are highly-opinionated, language-specific, batteries-included debug container images for Kubernetes. In practice, they’re what you would’ve installed on your production pods if you were stuck during a tough debug session in an unfamiliar shell. To briefly give some …
Shai Almog -
Enter the Cloud Native Dojo: Blackbelt-Level Debugging
In this article, I want to go over three challenges we face when debugging modern applications: polyglot, unreproducible, data pollution.
Shai Almog