CLI
vaka uploads debug files from build pipelines and gives a quick terminal view of issues.
Install
cargo install --git https://github.com/ErikHellman/vaka vaka
Prebuilt binaries for Linux, macOS and Windows are attached to each GitHub release, and the
Docker image contains vaka too (docker compose exec vaka vaka --help).
Configuration
| Flag | Env var | Meaning |
|---|---|---|
--url |
VAKA_URL |
Server URL (default http://localhost:8080) |
--token |
VAKA_TOKEN |
API token (vt_...); uploads need write scope |
-p, --project |
VAKA_PROJECT |
Project slug or id |
--key |
VAKA_KEY |
Ingest key, only for send-test-event |
--json |
Print raw JSON responses |
Upload debug files
# JavaScript: every *.map under dist, served from /assets
vaka upload sourcemaps dist --release 1.4.0 --url-prefix /assets
# Android: R8/ProGuard mapping
vaka upload proguard app/build/outputs/mapping/release/mapping.txt --release 2.3.1
# iOS/macOS: dSYM bundles, or a folder containing them (matched by UUID, no release needed)
vaka upload dsym build/MyApp.xcarchive/dSYMs
# Native (Rust, C/C++): ELF with debug info, Mach-O, PDB (matched by build id / debug id)
vaka upload debug-files target/release/myapp
--release must equal the release the SDK reports. Source maps are matched by the URL path of
the minified file, so --url-prefix must be the path the files are served from (for example
/assets when dist/app.js is served at https://example.com/assets/app.js).
Query
vaka projects
vaka issues -p web --since 7d --sort events # --status open|resolved|ignored|all
vaka issue WEB-12 # latest event with stack trace
vaka resolve WEB-12 --release 1.4.1
vaka health -p web --release 1.4.0 # crash-free sessions and users
Verify an installation
VAKA_URL=https://vaka.example.com VAKA_KEY=vk_... vaka send-test-event
Sends a test error with the ingest key and prints the server's response.