Logging meets the 2nd dimension
Export, visualize, and inspect data from anywhere in your program
How it works
Export
Instrument your code with our client libraries to start exporting data from anywhere in your program
fn generate_city() {
let points = generate_city_outline();
let poly = Polygon2Builder::from_points(points);
uploader.create_object2("city_outline", poly);
}
Toolbox of existing primitives
Model your data with our library of existing 2d and 3d primitives, e.g. polygons, images
Local or remote execution
Data collection is not limited to one machine. Export data from distributed systems/pipelines and aggregate it in a single place.
Visualize
View collected data in our web-based viewer. Spend time looking at your data, not deciphering text logs or building custom tools.
let image = Image2Builder::from(data);
image.set_per_pixel_transform(
PerPixelTransformBuilder::random_distinct_color());
Library of data transformations
Apply transformations to objects to make them easier to understand, e.g. recoloring images, coordinate transforms
Inspect
Use our tools to quickly find and diagnose issues so you can get back to building
Suite of debug tools
Use our suite of analysis tools to inspect transformations, find intersections between objects, and more.
Replay state changes
Go through algorithms step-by-step to see where they went wrong.