Skip to content

Latest commit

 

History

737 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Debuglet

Debuglet runs small WebAssembly programs for network measurements. A dispatcher accepts jobs and stores results. Executors run debuglets within their configured time and bandwidth budgets. The project includes the dbl command-line client, a Go client library, a Go SDK for writing debuglets, and examples.

Debuglet is an alpha for trusted environments. Read the security policy before operating a networked deployment.

Try it locally

Download the current Linux amd64 release from the releases page, install it, then run:

export PATH="$HOME/.local/bin:$PATH"
dbl demo

The demo starts temporary local roles, runs a WebAssembly measurement, verifies the result, and cleans up. It needs no existing service, account, compiler, root access, wallet, or hand-written configuration. See Install Debuglet for the short installation path.

A successful run prints Debuglet VERSION completed locally: ..., its executor and run IDs, and Cleanup: complete, then exits zero. If it fails, start with troubleshooting.

How it fits together

flowchart LR
    C[Client: dbl or Go application] -->|HTTP API| D[Dispatcher]
    D -->|submit, results, scheduling| DB[(Dispatcher state)]
    D <-->|authenticated control paths| E[Executor]
    E -->|runs| W[Debuglet: WASI program]
    E -->|local state| ES[(Executor state)]
Loading

The dispatcher exposes the API and coordinates work. Executors connect outward to it, so they do not require a public inbound control port. See the measurement flow for submission and execution, and deployment topology for the operational model.

Documentation

The versioned guides in docs/ are published at the documentation site. Use the documentation for the release you install.

Need Start here
Install and run a local demo Install Debuglet
Use the CLI CLI reference
Write a Go application client Go client library
Write a debuglet Write a debuglet
Integrate with the HTTP API OpenAPI contract and API guide
Understand the code and protocol Architecture
Operate a service Managed services
Contribute Contributing

Development

Debuglet development and package checks run on Linux amd64 with Go 1.26.8. From a checkout:

make ci-test
make ci-vet
make ci-build
make ci-package

Use CONTRIBUTING.md for the workflow, generated code, and review expectations.

License

Apache License 2.0.

About

Measure the Internet, responsibly.

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages