A set of shared Thrift and Protobuf data model definitions used by the Jaeger components.
As of Jan 2025 this repository also hosts Go code:
- implementation of Jaeger-v1 domain model
- Previous import path
"github.com/jaegertracing/jaeger/model"
- New import part is
"github.com/jaegertracing/jaeger-idl/model/v1"
- Previous import path
protoc
-generated Go types forapi_v2
- Previous import path
"github.com/jaegertracing/jaeger/proto-gen/api_v2"
- New import part is
"github.com/jaegertracing/jaeger-idl/proto-gen/api_v2"
- Previous import path
This repository does not publish the generated code, but it does run Thrift and protoc
generators as part of the CI to verify all IDL files. See the Makefile for example. In particular, the classes for different languages can be compiled using the jaegertracing/protobuf
Docker image (see README).
To generate the stubs for your own purposes:
- clone the repository
- run
make proto
ormake thrift
- the stubs will be generated under
gen-{lang}
for Thrift andproto-gen-{lang}
for Protobuf
The Jaeger repositories that use these IDL files usually import this repository as a Git submodule, so you can verify which revision of the IDLs is being used by looking at the submodule commit sha, e.g. in GitHub it will show like this [->] idl @ d64c4eb
.
See CONTRIBUTING.