@@ -27,6 +27,69 @@ Increment the:
27
27
* [ EXPORTER] Fix scope attributes missing from otlp traces metrics
28
28
[ #3185 ] ( https://github.com/open-telemetry/opentelemetry-cpp/pull/3185 )
29
29
30
+ * [ EXPORTER] Fix throw in OtlpGrpcMetricExporter with shared grpc client
31
+ [ #3243 ] ( https://github.com/open-telemetry/opentelemetry-cpp/pull/3243 )
32
+
33
+ * [ SDK] Better control of threads executed by opentelemetry-cpp
34
+ [ #3175 ] ( https://github.com/open-telemetry/opentelemetry-cpp/pull/3175 )
35
+
36
+ New features:
37
+
38
+ * [ SDK] Better control of threads executed by opentelemetry-cpp
39
+ [ #3175 ] ( https://github.com/open-telemetry/opentelemetry-cpp/pull/3175 )
40
+
41
+ * This feature provides a way for applications,
42
+ when configuring the SDK and exporters,
43
+ to participate in the execution path
44
+ of internal opentelemetry-cpp threads.
45
+
46
+ * The opentelemetry-cpp library provides the following:
47
+
48
+ * a new ThreadInstrumentation interface,
49
+ * new runtime options structures, to optionally configure the SDK:
50
+ * BatchSpanProcessorRuntimeOptions
51
+ * PeriodicExportingMetricReaderRuntimeOptions
52
+ * BatchLogRecordProcessorRuntimeOptions
53
+ * new runtime options structures,
54
+ to optionally configure the OTLP HTTP exporters:
55
+ * OtlpHttpExporterRuntimeOptions
56
+ * OtlpHttpMetricExporterRuntimeOptions
57
+ * OtlpHttpLogRecordExporterRuntimeOptions
58
+ * new ThreadInstrumentation parameters,
59
+ to optionally configure the CURL HttpClient
60
+ * new runtime options structures,
61
+ to optionally configure the OTLP FILE exporters:
62
+ * OtlpFileExporterRuntimeOptions
63
+ * OtlpFileMetricExporterRuntimeOptions
64
+ * OtlpFileLogRecordExporterRuntimeOptions
65
+ * new runtime options structure,
66
+ to optionally configure the OTLP FILE client:
67
+ * OtlpFileClientRuntimeOptions
68
+
69
+ * Using the optional runtime options structures,
70
+ an application can subclass the ThreadInstrumentation interface,
71
+ and be notified of specific events of interest during the execution
72
+ of an internal opentelemetry-cpp thread.
73
+
74
+ * This allows an application to call, for example:
75
+
76
+ * pthread_setaffinity_np(), for better performances,
77
+ * setns(), to control the network namespace used by HTTP CURL connections
78
+ * pthread_setname_np(), for better observability from the operating system
79
+ * many more specific apis, as needed
80
+
81
+ * See the documentation for ThreadInstrumentation for details.
82
+
83
+ * A new example program, example_otlp_instrumented_http,
84
+ shows how to use the feature,
85
+ and add application logic in the thread execution code path.
86
+
87
+ * Note that this feature is experimental,
88
+ protected by a WITH_THREAD_INSTRUMENTATION_PREVIEW
89
+ flag in CMake. Various runtime options structures,
90
+ as well as the thread instrumentation interface,
91
+ may change without notice before this feature is declared stable.
92
+
30
93
## [ 1.18 2024-11-25]
31
94
32
95
* [ EXPORTER] Fix crash in ElasticsearchLogRecordExporter
0 commit comments