A set of shared data model definitions used by Jaeger components.
Go to file
Mahad Zaryab be495f74ce
[grpc][v2] Move gRPC API from `jaeger` to `jaeger-idl` (#168)
## Which problem is this PR solving?
- Towards https://github.com/jaegertracing/jaeger/issues/7089

## Description of the changes
- This PR copies the gRPC API definitions from `jaeger` to this
repository. In a follow-up PR, the proto definitions will be removed
from `jaeger` and will point to this repo instead.

## How was this change tested?
- CI

## Checklist
- [x] I have read
https://github.com/jaegertracing/jaeger/blob/master/CONTRIBUTING_GUIDELINES.md
- [x] I have signed all commits
- [x] I have added unit tests for the new functionality
- [x] I have run lint and test steps successfully
  - for `jaeger`: `make lint test`
  - for `jaeger-ui`: `npm run lint` and `npm run test`

---------

Signed-off-by: Mahad Zaryab <mahadzaryab1@gmail.com>
2025-05-05 12:41:52 +00:00
.github/workflows Update actions/setup-go action to v5.4.0 (#162) 2025-04-01 02:39:18 +00:00
internal/tools Update module github.com/golangci/golangci-lint/v2 to v2.1.5 (#167) 2025-04-24 21:42:18 +00:00
model/v1 Update module github.com/golangci/golangci-lint to v2 (#159) 2025-03-24 14:40:02 +00:00
opentelemetry-proto@4ca4f0335c Upgrade to opentelemetry-proto v1.1.0 (#104) 2024-01-14 14:30:09 -05:00
proto [grpc][v2] Move gRPC API from `jaeger` to `jaeger-idl` (#168) 2025-05-05 12:41:52 +00:00
proto-gen/api_v2 Add model/v1 (#118) 2025-01-19 22:35:17 -04:00
swagger [chore] Update documentation in `query_service.proto` (#149) 2025-02-18 23:20:20 -05:00
thrift Remove unused Thrift definitions (#157) 2025-03-18 18:59:49 -04:00
thrift-gen Migrate sampling.thrift (#132) 2025-01-29 09:58:48 -05:00
.codecov.yml Don't count generated files in code coverage 2025-02-15 10:39:28 -05:00
.gitignore Compile thrift into dot-dir .thrift-gen-polyglot (#140) 2025-01-31 11:29:51 -05:00
.gitmodules Test api_v3 query service (#78) 2021-06-30 10:18:07 +02:00
.golangci.yaml Update module github.com/golangci/golangci-lint to v2 (#160) 2025-03-25 22:44:09 +00:00
CONTRIBUTING.md Replace "good commit" message in CONTRIBUTING.md (#48) 2018-05-22 10:47:40 -04:00
DCO Add DCO and CONTRIBUTING.md (#36) 2017-10-22 19:50:47 -04:00
LICENSE Update to Apache License v.2 2017-10-22 19:43:32 -04:00
Makefile [grpc][v2] Move gRPC API from `jaeger` to `jaeger-idl` (#168) 2025-05-05 12:41:52 +00:00
README.md Compile thrift into dot-dir .thrift-gen-polyglot (#140) 2025-01-31 11:29:51 -05:00
go.mod Update module google.golang.org/grpc to v1.72.0 (#166) 2025-04-21 13:31:41 +00:00
go.sum Update module google.golang.org/grpc to v1.72.0 (#166) 2025-04-21 13:31:41 +00:00
renovate.json Disable minor updates for all dependencies 2025-04-24 17:46:56 -04:00

README.md

jaeger-idl Build Status Coverage Status

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"
  • protoc-generated Go types for api_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"
  • All Thrift-generated types
    • Previous import path "github.com/jaegertracing/jaeger/thrift-gen/{agent,jaeger,sampling,zipkincore}"
    • New import part is "github.com/jaegertracing/jaeger-idl/thrift-gen/..."

Generating code

This repository only include Go code for some of the Thrift and Protobuf modules. It also runs 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-all or make thrift-all
  • the stubs will be generated under .thrift-gen-polyglot/gen-{lang} for Thrift and .proto-gen-polyglot/{lang} for Protobuf

Compatibility

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.

Contributing

See CONTRIBUTING.

License

Apache 2.0 License.