Stalk Studio is a highly flexible trace analysis tool for Jaeger and Zipkin.
- Search & import traces directly from Jaeger and Zipkin services
- Drag & drop JSON trace files exported from Jaeger and Zipkin
- Intuitive UI for extracting useful information from complex traces
- Supports viewing & inspecting multiple traces on the same stage to give you a bigger perspective
- and more...
In addition to the timeline view, Stalk Studio provides table views for spans and logs to
pinpoint interesting events quickly.
β’ Customizable columns: add/remove columns for span tags, process tags, log fields
β’ Sortable columns: sort spans by total time, self time, operation name, or any visible column
β’ Filter spans & logs
β’ Flexible panes: split views can be handy
Stalk Studio is built for being as flexible as possible to cover your changing needs when analyzing different traces.
You can customize the timeline in the following ways:
β’ Span Grouping: The spans in the same group are drawn vertically together.
You may think like horizontal lanes separated from each other. Uninteresting groups can be
collapsed to prevent visual clutter.
β’ Span Coloring: Change timeline span colors by operation name, service name,
however you want.
β’ Draw Layout: Change where spans should be rendered vertically. There are 3 options
provided: fill, compact, and waterfall style.
β’ Span Labelling: Change the text rendered on a span bar, if it has enough width to display.
β’ Tooltip Contents: Change the contents of the tooltip displayed when you hover a span bar.
You can add/remove interested span tags and process tags as your needs.
If the built-in customization options don't fill your needs, you can always write your own
custom JavaScript / TypeScript code to do the following:
β’ Change span grouping
β’ Change span labeling
β’ Change span coloring
β’ Filter spans & logs in table views
In addition to its analysis capabilities, Stalk Studio has live collector servers built-in
that mimicks Jaeger and Zipkin collector interface. So if you have services that already instrumented
with Jaeger and Zipkin, you can quickly capture & inspect low-volume traces just by changing
the reporting URL of your instrumentations. It can be useful for debugging and development purposes.
β’ Jaeger Agent: accepts jaeger.thrift in compact Thrift protocol over UDP.
β’ Jaeger Collector: accepts jaeger.thrift in binary Thrift protocol over HTTP.
β’ Zipkin Collector: accepts spans in JSON format over HTTP.
Go to releases page.
You must have node.js >= 12 installed on your machine.
- Clone the repo
- Install dependencies:
npm i
- Get started with webpack-dev-server w/ live-reload:
npm start
- Build the project in production mode:
npm run build
- Package the electron project into an executable:
npm run package
- Check out
/dist
folder for output
- Build the project in production mode:
npm run build
- Make distribution files (*.dmg, *.AppImage, *-setup.exe)
- Generates distribution files for your platform:
npm run distribute
- Generate distribution files for Windows and Linux in Docker:
node ./scripts/electron-build-win-and-linux-on-docker.sh
- Generates distribution files for your platform:
- Check out
/dist
folder for outputs