Features
Varsnap provides a smart wrapper function that instruments your code and proxies it for further use.
import varsnap # Use one of our many clients
def calculate(x, y, z):
...
calculate = varsnap(calculate) # Wrap any function with the varsnap function wrapper
calculate(1, 2, 3) # Call your functions like normal
Automated Testing and Shadow Traffic
Varsnap automatically records function calls in production and replays them into your local development, CI, or staging environment for testing. Varsnap supplements your unit and integration tests with copies of real data to ensure you have full test coverage.
Realtime Development
Use recorded and realtime production function calls to proxy to your development environment to continually test your code as you work. Varsnap will generate reports of how your changes will run in production, including correctness comparisons and performance regressions. With the Varsnap wrapper function, run upstream and downstream integration tests on specially targeted production or test traffic seamlessly from your laptop.
Logging and Metrics
Varsnap will automatically log and store metrics on functions that it operates on. Remove the need to manually scatter instrumentation boilerplate code throughout your codebase.
Simple Installation
Varsnap is trivial to install for most languages and frameworks. See the language support table below for installation instructions.
Language Support
Language | Support |
---|---|
Python (2 and 3) | Full |
Javascript | Full |
Go | Coming Soon |
Java | Coming Soon |
Ruby | Coming Soon |