Open-source tools
Trace a tool retry or parse a query on your own machine. Neither local example needs an account, API key, or telemetry of your own. The SDK and CLI are clients for an existing endpoint, not a way to provision one.
Choose a component
- Tool retry example
Inspect three console spans: a failed read-only lookup, its successful retry, and the successful agent run that contains both.
Python 3.13 or Node.js 22.18+; no server or account for the local run. Optional export to PackDB Cloud requires an existing workspace and ingest key.
- LogQL parser
Parse LogQL into a typed syntax tree with structured errors.
Rust; no server or account
- TraceQL parser
Parse the documented supported TraceQL subset.
Rust; no server or account
- Rust SDK
Query SQL over HTTP or Flight SQL, preserving reported completeness.
Existing endpoint and operator-issued credentials for SQL
- Query CLI
Run SQL from the command line; follow the release-specific README.
Existing endpoint and operator-issued credentials
These are supporting libraries and tools, not the full PackDB platform. The parsers do not execute queries or retrieve telemetry. Check each parser repository's compatibility document for supported syntax and limits.
Parse a LogQL query locally
With Rust 1.94.1 or newer installed, create an application and add the tagged source dependency. This example pins LogQL parser v0.1.1; it does not depend on an unreleased branch or a crates.io package.
cargo new packdb-parser-example
cd packdb-parser-example
cargo add --git https://github.com/packdb-oss/logql-parser --tag v0.1.1 packdb-logql-parserUse this as the application's src/main.rs:
fn main() -> Result<(), packdb_logql_parser::ParseError> {
let query = packdb_logql_parser::parse(
r#"{service_name="checkout"} |= "error""#,
)?;
println!("{query:#?}");
Ok(())
}cargo runThe output is a syntax tree for a stream selector and line filter, not matching log lines. Malformed or unsupported input produces a structured error. Review and commit your application's Cargo.lock; the dependency's lockfile does not pin your application.
For trace-query syntax, start with the TraceQL parser example and supported subset.
Already have an endpoint?
Follow the SDK's completeness-aware HTTP quickstart or the workspace ingestion quickstart. Use the endpoint and credentials issued by your operator. A successful query response is not an independent audit of the underlying telemetry.
See why the SDK preserves reported limitations in A successful telemetry query is not always a complete answer.
Rust releases are available on GitHub; the Rust packages are not currently published to crates.io. Community support is best effort, not a commercial service-level agreement. See each repository for its Apache-2.0 license, contribution guidelines, and security-reporting policy.