You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by pn...@apache.org on 2024/10/24 15:55:23 UTC
(flink) 05/05: [FLINK-33696][docs] Document OpenTelemetryMetric\TraceReporter
This is an automated email from the ASF dual-hosted git repository.
pnowojski pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git
commit 5ba3f91717d273d2b3436e3851964fb6b399797c
Author: Piotr Nowojski <pi...@gmail.com>
AuthorDate: Wed Oct 16 13:02:48 2024 +0200
[FLINK-33696][docs] Document OpenTelemetryMetric\TraceReporter
---
docs/content/docs/deployment/metric_reporters.md | 15 +++++++++
docs/content/docs/deployment/trace_reporters.md | 18 ++++++++++-
.../open_telemetry_reporter_configuration.html | 36 ++++++++++++++++++++++
flink-docs/pom.xml | 5 +++
.../docs/util/ConfigurationOptionLocator.java | 2 ++
5 files changed, 75 insertions(+), 1 deletion(-)
diff --git a/docs/content/docs/deployment/metric_reporters.md b/docs/content/docs/deployment/metric_reporters.md
index ed88a49fb97..411e5c19279 100644
--- a/docs/content/docs/deployment/metric_reporters.md
+++ b/docs/content/docs/deployment/metric_reporters.md
@@ -274,6 +274,21 @@ metrics.reporter.dghttp.interval: 60 SECONDS
metrics.reporter.dghttp.useLogicalIdentifier: true
```
+### OpenTelemetry
+#### (org.apache.flink.metrics.otel.OpenTelemetryMetricReporterFactory)
+
+`OpenTelemetryMetricReporterFactory` currently supports only gRPC.
+
+Parameters:
+
+{{< include_reporter_config "layouts/shortcodes/generated/open_telemetry_reporter_configuration.html" >}}
+
+Example configuration:
+
+```yaml
+metrics.reporter.otel.factory.class: org.apache.flink.metrics.otel.OpenTelemetryMetricReporterFactory
+metrics.reporter.otel.exporter.endpoint: http://127.0.0.1:1337
+```
### Slf4j
#### (org.apache.flink.metrics.slf4j.Slf4jReporter)
diff --git a/docs/content/docs/deployment/trace_reporters.md b/docs/content/docs/deployment/trace_reporters.md
index aec68b98f77..c310a54f69e 100644
--- a/docs/content/docs/deployment/trace_reporters.md
+++ b/docs/content/docs/deployment/trace_reporters.md
@@ -45,7 +45,7 @@ Example reporter configuration that specifies multiple reporters:
```yaml
traces.reporters: otel,my_other_otel
-traces.reporter.otel.factory.class: org.apache.flink.common.metrics.OpenTelemetryTraceReporterFactory
+traces.reporter.otel.factory.class: org.apache.flink.traces.otel.OpenTelemetryTraceReporterFactory
traces.reporter.otel.exporter.endpoint: http://127.0.0.1:1337
traces.reporter.otel.scope.variables.additional: region:eu-west-1,environment:local,flink_runtime:1.17.1
@@ -64,6 +64,22 @@ Be careful that all the method must not block for a significant amount of time,
The following sections list the supported reporters.
+### OpenTelemetry
+#### (org.apache.flink.traces.otel.OpenTelemetryTraceReporterFactory)
+
+`OpenTelemetryTraceReporterFactory` currently supports only gRPC.
+
+Parameters:
+
+{{< include_reporter_config "layouts/shortcodes/generated/open_telemetry_reporter_configuration.html" >}}
+
+Example configuration:
+
+```yaml
+traces.reporter.otel.factory.class: org.apache.flink.metrics.otel.OpenTelemetryTraceReporterFactory
+traces.reporter.otel.exporter.endpoint: http://127.0.0.1:1337
+```
+
### Slf4j
#### (org.apache.flink.traces.slf4j.Slf4jTraceReporter)
diff --git a/docs/layouts/shortcodes/generated/open_telemetry_reporter_configuration.html b/docs/layouts/shortcodes/generated/open_telemetry_reporter_configuration.html
new file mode 100644
index 00000000000..812f375fbcc
--- /dev/null
+++ b/docs/layouts/shortcodes/generated/open_telemetry_reporter_configuration.html
@@ -0,0 +1,36 @@
+<table class="configuration table table-bordered">
+ <thead>
+ <tr>
+ <th class="text-left" style="width: 20%">Key</th>
+ <th class="text-left" style="width: 15%">Default</th>
+ <th class="text-left" style="width: 10%">Type</th>
+ <th class="text-left" style="width: 55%">Description</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td><h5>metrics.reporter.OpenTelemetry.exporter.endpoint</h5></td>
+ <td style="word-wrap: break-word;">(none)</td>
+ <td>String</td>
+ <td>Endpoint for the OpenTelemetry Reporters.</td>
+ </tr>
+ <tr>
+ <td><h5>metrics.reporter.OpenTelemetry.exporter.timeout</h5></td>
+ <td style="word-wrap: break-word;">(none)</td>
+ <td>String</td>
+ <td>Timeout for OpenTelemetry Reporters, as Duration string. Example: 10s for 10 seconds</td>
+ </tr>
+ <tr>
+ <td><h5>metrics.reporter.OpenTelemetry.service.name</h5></td>
+ <td style="word-wrap: break-word;">(none)</td>
+ <td>String</td>
+ <td>service.name passed to OpenTelemetry Reporters.</td>
+ </tr>
+ <tr>
+ <td><h5>metrics.reporter.OpenTelemetry.service.version</h5></td>
+ <td style="word-wrap: break-word;">(none)</td>
+ <td>String</td>
+ <td>service.version passed to OpenTelemetry Reporters.</td>
+ </tr>
+ </tbody>
+</table>
diff --git a/flink-docs/pom.xml b/flink-docs/pom.xml
index 3ae793094f6..0aa82442a63 100644
--- a/flink-docs/pom.xml
+++ b/flink-docs/pom.xml
@@ -90,6 +90,11 @@ under the License.
<artifactId>flink-metrics-influxdb</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.flink</groupId>
+ <artifactId>flink-metrics-otel</artifactId>
+ <version>${project.version}</version>
+ </dependency>
<dependency>
<!-- necessary for loading the web-submission extension -->
<groupId>org.apache.flink</groupId>
diff --git a/flink-docs/src/main/java/org/apache/flink/docs/util/ConfigurationOptionLocator.java b/flink-docs/src/main/java/org/apache/flink/docs/util/ConfigurationOptionLocator.java
index e2341cfeb0f..be9df91856c 100644
--- a/flink-docs/src/main/java/org/apache/flink/docs/util/ConfigurationOptionLocator.java
+++ b/flink-docs/src/main/java/org/apache/flink/docs/util/ConfigurationOptionLocator.java
@@ -63,6 +63,8 @@ public class ConfigurationOptionLocator {
new OptionsClassLocation(
"flink-metrics/flink-metrics-influxdb",
"org.apache.flink.metrics.influxdb"),
+ new OptionsClassLocation(
+ "flink-metrics/flink-metrics-otel", "org.apache.flink.metrics.otel"),
new OptionsClassLocation(
"flink-state-backends/flink-statebackend-rocksdb",
"org.apache.flink.contrib.streaming.state"),