ocaml-opentelemetry/src/proto/dune
Simon Cruanes a44c50581b
Support http/json protocol, carry protocol to HTTP emitter
- Regenerate proto bindings with yojson support
- Add JSON encoding path in Resource_signal.Encode
- Pass protocol from config to generic_http_consumer
- Set Content-Type/Accept headers based on protocol
- Remove hardcoded protobuf headers from all HTTP client implementations
- Add yojson dependency
2026-02-15 15:35:15 -05:00

195 lines
4 KiB
Text

(library
(name opentelemetry_proto)
(public_name opentelemetry.proto)
(synopsis "Protobuf generated code for opentelemetry")
(flags :standard -warn-error -a+8)
(libraries pbrt pbrt_yojson))
; ### protobuf rules ###
(rule
(alias lint)
(mode promote)
(enabled_if %{env:FORCE_GENPROTO=false})
(targets status.ml status.mli)
(deps
(:file status.proto)
(source_tree %{project_root}/vendor/opentelemetry-proto/))
(action
(run ocaml-protoc %{file} --ml_out . --pp --make --binary --yojson)))
(rule
(alias lint)
(mode promote)
(enabled_if %{env:FORCE_GENPROTO=false})
(targets common.ml common.mli)
(deps
(:file
%{project_root}/vendor/opentelemetry-proto/opentelemetry/proto/common/v1/common.proto)
(source_tree %{project_root}/vendor/opentelemetry-proto/))
(action
(run
ocaml-protoc
%{file}
-I
%{project_root}/vendor/opentelemetry-proto/
--ml_out
.
--pp
--make
--binary
--yojson)))
(rule
(alias lint)
(mode promote)
(enabled_if %{env:FORCE_GENPROTO=false})
(targets resource.ml resource.mli)
(deps
(:file
%{project_root}/vendor/opentelemetry-proto/opentelemetry/proto/resource/v1/resource.proto)
(source_tree %{project_root}/vendor/opentelemetry-proto/))
(action
(run
ocaml-protoc
%{file}
-I
%{project_root}/vendor/opentelemetry-proto/
--ml_out
.
--pp
--make
--binary
--yojson)))
(rule
(alias lint)
(mode promote)
(enabled_if %{env:FORCE_GENPROTO=false})
(targets trace.ml trace.mli)
(deps
(:file
%{project_root}/vendor/opentelemetry-proto/opentelemetry/proto/trace/v1/trace.proto)
(source_tree %{project_root}/vendor/opentelemetry-proto/))
(action
(run
ocaml-protoc
%{file}
-I
%{project_root}/vendor/opentelemetry-proto/
--ml_out
.
--pp
--make
--binary
--yojson)))
(rule
(alias lint)
(mode promote)
(enabled_if %{env:FORCE_GENPROTO=false})
(targets metrics.ml metrics.mli)
(deps
(:file
%{project_root}/vendor/opentelemetry-proto/opentelemetry/proto/metrics/v1/metrics.proto)
(source_tree %{project_root}/vendor/opentelemetry-proto/))
(action
(run
ocaml-protoc
%{file}
-I
%{project_root}/vendor/opentelemetry-proto/
--ml_out
.
--pp
--make
--binary
--yojson)))
(rule
(alias lint)
(mode promote)
(enabled_if %{env:FORCE_GENPROTO=false})
(targets logs.ml logs.mli)
(deps
(:file
%{project_root}/vendor/opentelemetry-proto/opentelemetry/proto/logs/v1/logs.proto)
(source_tree %{project_root}/vendor/opentelemetry-proto/))
(action
(run
ocaml-protoc
%{file}
-I
%{project_root}/vendor/opentelemetry-proto/
--ml_out
.
--pp
--make
--binary
--yojson)))
(rule
(alias lint)
(mode promote)
(enabled_if %{env:FORCE_GENPROTO=false})
(targets metrics_service.ml metrics_service.mli)
(deps
(:file
%{project_root}/vendor/opentelemetry-proto/opentelemetry/proto/collector/metrics/v1/metrics_service.proto)
(source_tree %{project_root}/vendor/opentelemetry-proto/))
(action
(run
ocaml-protoc
%{file}
-I
%{project_root}/vendor/opentelemetry-proto/
--ml_out
.
--pp
--make
--binary
--yojson)))
(rule
(alias lint)
(mode promote)
(enabled_if %{env:FORCE_GENPROTO=false})
(targets trace_service.ml trace_service.mli)
(deps
(:file
%{project_root}/vendor/opentelemetry-proto/opentelemetry/proto/collector/trace/v1/trace_service.proto)
(source_tree %{project_root}/vendor/opentelemetry-proto/))
(action
(run
ocaml-protoc
%{file}
-I
%{project_root}/vendor/opentelemetry-proto/
--ml_out
.
--pp
--make
--binary
--yojson)))
(rule
(alias lint)
(mode promote)
(enabled_if %{env:FORCE_GENPROTO=false})
(targets logs_service.ml logs_service.mli)
(deps
(:file
%{project_root}/vendor/opentelemetry-proto/opentelemetry/proto/collector/logs/v1/logs_service.proto)
(source_tree %{project_root}/vendor/opentelemetry-proto/))
(action
(run
ocaml-protoc
%{file}
-I
%{project_root}/vendor/opentelemetry-proto/
--ml_out
.
--pp
--make
--binary
--yojson)))