open-telemetry / opentelemetry-dotnet

The OpenTelemetry .NET Client
https://opentelemetry.io
Apache License 2.0
3.18k stars 753 forks source link

[Exporter.OpenTelemetryProtocol] Clients for profiling exporter #5759

Open Kielek opened 2 months ago

Kielek commented 2 months ago

Needed for https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/blob/main/docs/internal/continuous-profiler.md

Changes

  1. Clients for Profiling exporters.
  2. Expose internal OTLP Exporter API for OpenTelemetry.AutoInstrumetnation.

Profiling is highly experimental signal, but I would like to avoid making hard copies from this project into AutoInstrumentation. For now, I decided to create here only direct clients. The exporter itself will be implemented in AutoInstrumentation. I think that it is good compromise between reusability and possibility to make changes easily for Auto Instrumentation needs.

In the future, when the profiling will be closed to rc/ga state,I would expect to move more code to this project (Exporter).

Will be used by https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation/pull/3539

Other option

Alternative option is to make changes only in internals visible to and implement everything on the auto instrumentation side.

Merge requirement checklist

codecov[bot] commented 2 months ago

Codecov Report

Attention: Patch coverage is 53.70370% with 25 lines in your changes missing coverage. Please review.

Project coverage is 86.16%. Comparing base (6250307) to head (7953493). Report is 331 commits behind head on main.

Files with missing lines Patch % Lines
...ation/ExportClient/OtlpHttpProfilesExportClient.cs 12.50% 14 Missing :warning:
...ation/ExportClient/OtlpGrpcProfilesExportClient.cs 41.66% 7 Missing :warning:
...TelemetryProtocol/OtlpExporterOptionsExtensions.cs 84.61% 4 Missing :warning:
Additional details and impacted files [![Impacted file tree graph](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet/pull/5759/graphs/tree.svg?width=650&height=150&src=pr&token=vscyfvPfy5&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry)](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet/pull/5759?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) ```diff @@ Coverage Diff @@ ## main #5759 +/- ## ========================================== + Coverage 83.38% 86.16% +2.78% ========================================== Files 297 259 -38 Lines 12531 11204 -1327 ========================================== - Hits 10449 9654 -795 + Misses 2082 1550 -532 ``` | [Flag](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet/pull/5759/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | Coverage Δ | | |---|---|---| | [unittests](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet/pull/5759/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `?` | | | [unittests-Project-Experimental](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet/pull/5759/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `86.07% <53.70%> (?)` | | | [unittests-Project-Stable](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet/pull/5759/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `86.16% <53.70%> (?)` | | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry#carryforward-flags-in-the-pull-request-comment) to find out more. | [Files with missing lines](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet/pull/5759?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | Coverage Δ | | |---|---|---| | [...TelemetryProtocol/OtlpExporterOptionsExtensions.cs](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet/pull/5759?src=pr&el=tree&filepath=src%2FOpenTelemetry.Exporter.OpenTelemetryProtocol%2FOtlpExporterOptionsExtensions.cs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry#diff-c3JjL09wZW5UZWxlbWV0cnkuRXhwb3J0ZXIuT3BlblRlbGVtZXRyeVByb3RvY29sL090bHBFeHBvcnRlck9wdGlvbnNFeHRlbnNpb25zLmNz) | `89.32% <84.61%> (-4.30%)` | :arrow_down: | | [...ation/ExportClient/OtlpGrpcProfilesExportClient.cs](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet/pull/5759?src=pr&el=tree&filepath=src%2FOpenTelemetry.Exporter.OpenTelemetryProtocol%2FImplementation%2FExportClient%2FOtlpGrpcProfilesExportClient.cs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry#diff-c3JjL09wZW5UZWxlbWV0cnkuRXhwb3J0ZXIuT3BlblRlbGVtZXRyeVByb3RvY29sL0ltcGxlbWVudGF0aW9uL0V4cG9ydENsaWVudC9PdGxwR3JwY1Byb2ZpbGVzRXhwb3J0Q2xpZW50LmNz) | `41.66% <41.66%> (ø)` | | | [...ation/ExportClient/OtlpHttpProfilesExportClient.cs](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet/pull/5759?src=pr&el=tree&filepath=src%2FOpenTelemetry.Exporter.OpenTelemetryProtocol%2FImplementation%2FExportClient%2FOtlpHttpProfilesExportClient.cs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry#diff-c3JjL09wZW5UZWxlbWV0cnkuRXhwb3J0ZXIuT3BlblRlbGVtZXRyeVByb3RvY29sL0ltcGxlbWVudGF0aW9uL0V4cG9ydENsaWVudC9PdGxwSHR0cFByb2ZpbGVzRXhwb3J0Q2xpZW50LmNz) | `12.50% <12.50%> (ø)` | | ... and [215 files with indirect coverage changes](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet/pull/5759/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry)
github-actions[bot] commented 1 month ago

This PR was marked stale due to lack of activity and will be closed in 7 days. Commenting or Pushing will instruct the bot to automatically remove the label. This bot runs once per day.

github-actions[bot] commented 1 month ago

This PR was marked stale due to lack of activity and will be closed in 7 days. Commenting or pushing will instruct the bot to automatically remove the label. This bot runs once per day.

github-actions[bot] commented 1 month ago

This PR was marked stale due to lack of activity and will be closed in 7 days. Commenting or pushing will instruct the bot to automatically remove the label. This bot runs once per day.

github-actions[bot] commented 3 weeks ago

This PR was marked stale due to lack of activity and will be closed in 7 days. Commenting or pushing will instruct the bot to automatically remove the label. This bot runs once per day.

github-actions[bot] commented 2 weeks ago

This PR was marked stale due to lack of activity and will be closed in 7 days. Commenting or pushing will instruct the bot to automatically remove the label. This bot runs once per day.

github-actions[bot] commented 2 days ago

This PR was marked stale due to lack of activity and will be closed in 7 days. Commenting or pushing will instruct the bot to automatically remove the label. This bot runs once per day.