Rookout improves visibility into third-party code
Increasingly developers are reliant on code modules that weren't created in house and when it comes to debugging applications this third-party code can present a problem.
Now though debugging platform Rookout is announcing new functionality that makes it easier for developers to debug other people's code.
"Debugging becomes even more difficult when you run into code that you didn’t write -- which in today's modern distributed environments can be the large majority of code keeping the application running," says Liran Haimovitch, CTO and co-founder of Rookout. "Before today, even adding a log line to one of those 3rd party dependencies seemed like an insurmountable task, but that is all changing with our newly released functionality."
Rookout is installed as an SDK and deployed in every running instance of the application. The SDK performs bytecode manipulation which gives it direct access to running code frames as the application runs. This allows the Rookout SDK to fetch the value of local variables, stack traces, and metadata about the running application. The unique implementation offered by Rookout means this data can be fetched even when the software engineers didn't build the application themselves or have no access to the source code.
Rookout's head of research and development, Dudi Cohen writes on the company's blog, "When our customers told us that they needed our help to debug those third party packages, we immediately tried to understand where the right place is for them to begin their debugging. We've definitely pondered and considered bundling a decompiler with Rookout's Desktop Application but sometimes that's too much of a hassle for the user. We also thought about trying to automatically detect and fetch the source code of open source packages, but that only solves the issue for open source scenarios. Eventually, our solution came from asking ourselves where we can pinpoint the places in which we definitely know where the third party code is executed for our users and where that code has interaction with our customer's code."
You can find out more on the Rookout site.