Welcome to Sidekick
Sidekick is a Real-Time Application Debugger that helps you to troubleshoot problems where they happen, when they happen, without stopping, rebuilding, or redeploying applications.
Debugging applications in remote environments is painful because you can’t set breakpoints to remote applications like you can in your local environment. The main motivation behind Sidekick is to help developers alleviate the suffering caused by the lack of tooling for debugging during remote development on distributed environments.
Sidekick removes the burden of debugging and enables developers to set a non-intrusive breakpoint to your code, which doesn’t interrupt an execution but is still able to debug your application even if your app is up and running.
Sidekick provides Java, Python and NodeJS agents for application runtimes. Developers put Sidekick actions (logpoints & tracepoints )in code using either Web IDE, Visual Studio Code, IntelliJ IDEA, PyCharm or WebStorm and Sidekick conveys the point locations to the agent. When the code executes, the agent takes a snapshot of the application state, the call stack, captured variables, etc. without stopping the application, and sends the snapshot or the generated log to your environment as an event.
After capturing the snapshots or generating logs with Sidekick, developers can analyze the events to understand the behavior of the application.
While utilizing log data seems the most obvious choice for debugging a remote application, Sidekick provides an extra edge with a seamless debugging experience that is similar to debugging an application in your local environment.
Whether you're a developer, testing software engineer, or QA engineer, Sidekick is here to help you find the root cause of the errors.
Benefits of Sidekick for Developers, QA Engineers, and Software Engineers:
- Debug your remote application (monoliths or microservices on Kubernetes, Docker, VMs, or Local) and collect actionable data from your remote application.
- Add logs to your production apps without redeploying or restarting
- Cut your monitoring costs with on-demand & conditional logpoints & tracepoints
- On-board new developers by showing how your apps work using real-time data.
- Observe Event-Driven Systems with ease
- Programmatically control where and when you collect data from your applications
- Either use Sidekick's Web IDE, VS Code, IntelliJ IDEA, PyCharm & WebStorm extensions to control your Sidekick Actions or use headless clients to bring Sidekick to your workflow in any way you want!
- Evaluate the impact of an error on applications with integrated distributed tracing.
- Collaborate with your colleagues by sharing snapshots taken by Sidekick.
- Reduce the time spent context-switching between different tools.
- Triage failures in tests even faster with snapshots and traces
- Re-run tests with more added intelligence