Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 15 additions & 8 deletions content/en/documentation/for-adopters/observability/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -338,9 +338,10 @@ By default, the runtime logs to the standard output, one line per message, with
The level is set with the program argument `--log-level` (`SEVERE`, `WARNING`, `INFO`, the default, or `DEBUG`), e.g.
`java -jar controlplane.jar --log-level=DEBUG`; `--no-color` disables the colors. Errors (`SEVERE`) are always logged.

Logs can be sent to an OpenTelemetry collector instead, with the `otel-monitor` extension (not part of the BOMs) and the
OpenTelemetry Java agent: each log message becomes an OpenTelemetry log record of the logger `org.eclipse.edc`, with the
exception, if any, as attributes. Other log formats are provided by extensions implementing `MonitorExtension`.
Logs can be sent to an OpenTelemetry collector instead, with the `otel-monitor` extension (in
`controlplane-feature-observability-bom`) and the OpenTelemetry Java agent: each log message becomes an OpenTelemetry
log record of the logger `org.eclipse.edc`, with the exception, if any, as attributes. Other log formats are provided by
extensions implementing `MonitorExtension`.

## Tracing

Expand All @@ -366,8 +367,14 @@ noticeably. Sample traces (`otel.traces.sampler`) in production.

## Metrics

The Micrometer extensions `micrometer-core`, `jetty-micrometer` and `jersey-micrometer` (not part of the BOMs) collect
JVM, HTTP client, executor, Jetty and Jersey metrics, see
[Instrumentation with Micrometer](../../for-contributors/metrics.md). EDC doesn't expose them itself: export them with the
OpenTelemetry Java agent, e.g. with `-Dotel.instrumentation.micrometer.enabled=true` and
`-Dotel.metrics.exporter=prometheus`, which serves them for Prometheus on port `9464`.
The Micrometer extensions `micrometer-core`, `jetty-micrometer` and `jersey-micrometer` collect JVM, HTTP client,
executor, Jetty and Jersey metrics, see [Instrumentation with Micrometer](../../for-contributors/metrics.md). Add them,
together with `otel-monitor`, with the `controlplane-feature-observability-bom`, which works with both the single and the
multi-participant control planes.

The Jersey metrics measure the requests of the `default` API context; list the contexts to measure in
`edc.metrics.jersey.contexts`, e.g. `management,protocol,signaling`, or `*` for all of them.

EDC doesn't expose the metrics itself: export them with the OpenTelemetry Java agent, e.g. with
`-Dotel.instrumentation.micrometer.enabled=true` and `-Dotel.metrics.exporter=prometheus`, which serves them for
Prometheus on port `9464`.
9 changes: 8 additions & 1 deletion content/en/documentation/for-contributors/metrics.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,4 +56,11 @@ The following properties can use used to configure which metrics will be collect
- `edc.metrics.jetty.enabled`: enables/disables collection of Jetty metrics
- `edc.metrics.jersey.enabled`: enables/disables collection of Jersey metrics

Default values are always "true", switch to "false" to disable the corresponding feature.
Default values are always "true", switch to "false" to disable the corresponding feature. `edc.metrics.enabled` applies
to all of them: a source is measured only if both its own setting and `edc.metrics.enabled` are "true".

- `edc.metrics.jersey.contexts`: comma-separated aliases of the API contexts whose requests the Jersey metrics measure,
e.g. `default,management,protocol,signaling`, or `*` for all of them. Default: `default`. An alias without port
mapping is ignored with a warning.

The extensions are part of `controlplane-feature-observability-bom`.
Loading