Few people get into coding because they enjoy debugging, but since there’s no such thing as perfect code, issues inevitably pop up. Israeli startup Rookout is tackling one aspect of this by helping developers track down issues in production code without forcing developers to do any additional coding to write additional tests and re-deploy their apps. As the company announced today, it has raised $4.2 million in seed funding from TLV Partners and Emerge.
Rookout co-founders Or Weis and Liran Haimovitch told me that their own experience in writing code led them to starting this project. Weis, who has taken the CEO role, with Haimovitch being the CTO, noted that only a few years ago, your code would run in its own box and you’d have full control over it. These days, however, your code may run in multiple locations and it’s virtually impossible to get access to the entire state of an application. So when bugs pop up in production — as they often do, despite all of the testing that happens throughout the development process — debugging becomes a real pain point.
Rookout’s solution for this is to instrument the code with “breakpoints that don’t break.” To make this work, you connect Rookout’s online IDE with your code repository on GitHub, Bitbucket or another git hosting service (or with your local file system). The IDE will pull in the code and let you browse it. Developers typically have a hunch about where a bug may be, so when you get to the suspect file, you use Rookout’s visual rule editor to set your virtual breakpoint. Once the production code runs again, all of the data is automatically pushed into the IDE so that you can examine the entire stack trace up to where you set the breakpoint.
All of this works for code that was written in Python and Node.js, as well as for Java virtual machine (JVM) languages like Scala or Kotlin. As for environments, the service currently works for code that’s deployed on AWS, Azure, Google Cloud and local servers, where it can be used with both serverless and containerized applications, too.
While Rookout focuses on collecting data, the team was pretty clear about the fact that Rookout doesn’t want to be an application performance monitoring tool. You can, however, forward your Rookout data to these kind of tools.
Weis and Haimovitch tell me the company now has 14 employees and “dozens” of customers in the pipeline. Looking ahead, the team plans to add support for Go and other languages as the requests come in, and gradually add more IDE support, too.
Like at many a startup, the founders are still working out their pricing model. The current plan is to focus it around the number of hosts that a company is using, though that could still change.