Accelerate Your Team's Velocity
- Set a non-breaking break-point
- Get data on the fly without stopping or breaking your app
What can you do with Rookout?
Live Debugging: Production, Dev, and Staging
Rookout speeds up the debugging process in dev, staging, and production. Without Rookout, a developer needs to go write new code, redeploy, and wait for data in order to debug. What used to often take hours and days can now be done in seconds, allowing devs to skip these long debugging processes and reduce debugging time by up to 80%. This translates to hours of time saved, as well as allowing devs to focus their efforts on value creating tasks, rather than maintenance tasks.
Collaboration and Handoffs
Rookout empowers Developers, SREs, QA, and Support Engineers to share data and insight about the behavior of the code and the application running it. By providing a single source of truth and allowing the different teams to fetch data without changing code, Rookout makes the application easier to understand and streamlines collaboration and handoffs.
Add only the log lines you need, when you need them. Say goodbye to logging-FOMO and to the unnecessary effort and cost of maintaining too many logs.
Tracing and Profiling
Integrate with popular Tracing and Profiling tools such as Jaeger, Zipkin, and AppDash to dynamically fetch Tracing and Profiling data. Get the context information you need when you need it. Measure application performance without waiting for log lines to be added.
Dynamic Alerting and Monitoring
Pipeline Rookout debug snapshots, log lines, and metrics into your tool of choice to dynamically generate alerts and monitors. Our customers use Slack, Datadog, AppDynamics, Logz.io, among others.
Training and Onboarding
Diving into a new code base is hard. Understanding how a legacy monolith or a complex dynamic cloud native app behave is near impossible. Rookout lets developers speed up the learning process by showing how the code behaves in a real environment.
On-Demand Analytics and Metrics
Business personas such as Product, Customer Success, and Marketing need data from running apps and developers write code to supply it. Rookout makes fetching business data instantaneous, freeing up precious development time. In some cases, the business personas can even use Rookout on their own.
Play around with Rookout
Want to see how it works? Just click and play!
Experience Rookout for yourself. No registration or installation needed.
No registration needed
What our customers are saying
I can envision cases in which it might have taken me several hours of adding log lines and pushing to staging to find errors that I found in minutes with Rookout. I was also pleasantly impressed with the responsiveness of the Rookout team to our questions and requests. Their level of support exceeded our expectations.
When debugging at JellyButton, it would take upwards of about an hour per bug. By incorporating Rookout into our debugging workflow, we have managed to cut the time spent per bug from an hour down to around 10 minutes or so - an 83% improvement to our workflow - and freeing up a significant amount of time to focus on building more features.
Getting Started is a Breeze
How it works
TL;DR: Rookout uses bytecode or opcode manipulation to instrument your app on the fly, with zero overhead, risk, or friction.
When you click on a line and set a breakpoint, its configuration (JSON file including file name, line number, and hash) is communicated to all the relevant instances of your app according to your project filter, and all future relevant instances that will spin into existence.
The SDKs within these instances will identify the relevant parts in memory correlating to your target code and add exactly the code needed (ONLY read-only operations) to implement the data collection you’ve asked for. Data will be pipelined out in an asynchronous fashion to a local controller (if installed and configured) or directly to Rookout’s SaaS.
Rookout releases your app as soon as possible to resume normal execution.
Because Rookout applies exactly what you’ve asked for, directly as code - there is no overhead - in fact the overhead is about the same as when you are writing that very code yourself.