Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cocurrency otlp http session #1281

Merged

Conversation

owent
Copy link
Member

@owent owent commented Mar 23, 2022

Changes

  1. Finish async Export for OtlpHttpClient, OtlpHttpExporter and OtlpHttpLogExporter.
  2. Add tests for both sync and async exporting.
  3. Fix problems when waiting for ForceFlush and Shutdown to finish.

If the background and IO thread run under these sequences below, it will wait for ever before.

Thread 1 Thread 2
if(notification_atomic_variable.load()) -
- notification_atomic_variable.store()
- notification_condition_variable.notify_one/notify_all()
notification_condition_variable.wait() -

I replace all wait() in BatchSpanProcessor, BatchLogProcessor and OtlpHttpClient with wait_for() to solve this situation.
But I wonder if there is a better solution?

For significant contributions please make sure you have completed the following items:

  • CHANGELOG.md updated for non-trivial changes
  • Unit tests have been added
  • Changes in public API reviewed

@lalitb
Copy link
Member

lalitb commented Mar 23, 2022

@owent - The tests are failing for this, will be able to merge once they are successful.

@owent owent changed the title Cocurrency otlp http session [WIP]Cocurrency otlp http session Mar 23, 2022
@owent
Copy link
Member Author

owent commented Mar 23, 2022

@owent - The tests are failing for this, will be able to merge once they are successful.

There are some problems with locks,I will finish it tomorrow.

@owent owent changed the title [WIP]Cocurrency otlp http session Cocurrency otlp http session Mar 24, 2022
… special sequence which is very hard to happen

Signed-off-by: owent <[email protected]>
@owent
Copy link
Member Author

owent commented Mar 24, 2022

@owent - The tests are failing for this, will be able to merge once they are successful.

@lalitb @DebajitDas Could you please review and approve this PR to run. I have tested it locally but I'm wondering if it's still OK on all platforms we support.

@lalitb
Copy link
Member

lalitb commented Mar 24, 2022

@lalitb @DebajitDas Could you please review and approve this PR to run. I have tested it locally but I'm wondering if it's still OK on all platforms we support.

Sure I would be reviewing it tomorrow morning (my time).

@lalitb
Copy link
Member

lalitb commented Mar 25, 2022

Sure I would be reviewing it tomorrow morning (my time).

Sorry got stuck in other stuff. Will review it tomorrow.

@owent
Copy link
Member Author

owent commented Mar 25, 2022

Sure I would be reviewing it tomorrow morning (my time).

Sorry got stuck in other stuff. Will review it tomorrow.

That's fine.

@@ -184,37 +212,25 @@ void BatchSpanProcessor::Export(const bool was_force_flush_called)
{
exporter_->Export(
nostd::span<std::unique_ptr<Recordable>>(spans_arr.data(), spans_arr.size()));
NotifyCompletion(notify_force_flush, synchronization_data_);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not clear on the scenario when by the time sync Export completes and notifies the main thread about force flush completion, buffer gets updated with new recordables and then Export would happen again. Should the main thread wait for second export ? or its not considered as a part of force flush?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think ForceFlush means flush and wait all the data before the calling time. It may be used to ensure logical order.(To keep A happens or not happens before B, just like memory_order)
I believe it do not concerns what will happend in the future.

@owent owent force-pushed the cocurrency_otlp_http_session branch from f9282d8 to 983c40c Compare March 29, 2022 02:36
@lalitb
Copy link
Member

lalitb commented Mar 29, 2022

@owent @DebajitDas - would it be fine to merge this PR to the feature branch. And we can have a review of the PR from the feature flag when you feel it is ready ( now ? )?

@owent
Copy link
Member Author

owent commented Mar 29, 2022

@owent @DebajitDas - would it be fine to merge this PR to the feature branch. And we can have a review of the PR from the feature flag when you feel it is ready ( now ? )?

I rebase from main again, but it show conflicts. Should I just merge the changes from main but not rebase it?

@lalitb
Copy link
Member

lalitb commented Mar 29, 2022

Should I just merge the changes from main but not rebase it?

Yes, I feel it should be fine to merge from main. Can you try please.

@owent owent force-pushed the cocurrency_otlp_http_session branch from 983c40c to cb53aa5 Compare March 29, 2022 04:43
@owent
Copy link
Member Author

owent commented Mar 29, 2022

Should I just merge the changes from main but not rebase it?

Yes, I feel it should be fine to merge from main. Can you try please.

Done, this PR can be merged into [async-changes](https://github.com/open-telemetry/opentelemetry-cpp/tree/async-changes) now.

@lalitb lalitb merged commit 15e7725 into open-telemetry:async-changes Mar 29, 2022
owent added a commit to owent/opentelemetry-cpp that referenced this pull request Jun 7, 2022
commit c484d16
Merge: 0abf162 7e90dae
Author: WenTao Ou <[email protected]>
Date:   Tue Jun 7 10:57:25 2022 +0800

    Merge remote-tracking branch 'opentelemetry/main' into async-changes

    Signed-off-by: WenTao Ou <[email protected]>

    # Conflicts:
    #	CHANGELOG.md

commit 0abf162
Merge: cd3655f 5c8f476
Author: WenTao Ou <[email protected]>
Date:   Wed May 25 12:11:04 2022 +0800

    Merge remote-tracking branch 'opentelemetry/main' into merge_main_into_async-changes

commit cd3655f
Merge: d7b03e8 63803d1
Author: owent <[email protected]>
Date:   Fri May 20 14:28:31 2022 +0800

    Merge branch 'merge_async-changes_into_main' into merge_main_into_async-changes

    Signed-off-by: owent <[email protected]>

    # Conflicts:
    #	CHANGELOG.md
    #	CMakeLists.txt
    #	api/CMakeLists.txt
    #	api/include/opentelemetry/common/spin_lock_mutex.h
    #	ci/do_ci.ps1
    #	ci/do_ci.sh
    #	examples/common/metrics_foo_library/foo_library.cc
    #	examples/prometheus/prometheus.yml
    #	exporters/otlp/test/otlp_http_log_exporter_test.cc
    #	ext/src/http/client/curl/CMakeLists.txt

commit d7b03e8
Author: WenTao Ou <[email protected]>
Date:   Fri May 20 13:25:24 2022 +0800

    Merge main into async changes (open-telemetry#1411)

commit 0aebd6e
Author: WenTao Ou <[email protected]>
Date:   Mon May 16 23:26:41 2022 +0800

    Merge main into async changes (open-telemetry#1395)

commit 08a12b5
Author: WenTao Ou <[email protected]>
Date:   Thu May 12 00:51:48 2022 +0800

    Cocurrency otlp http session (open-telemetry#1317)

commit c614258
Author: DEBAJIT DAS <[email protected]>
Date:   Wed May 4 22:55:20 2022 +0530

     Added max async export support using separate AsyncBatchSpan/LogProcessor (open-telemetry#1306)

commit 465158c
Author: WenTao Ou <[email protected]>
Date:   Mon Apr 25 23:48:02 2022 +0800

    Merge `main` into `async-changes` (open-telemetry#1348)

    * install sdk config (open-telemetry#1273)

    * Bump actions/cache from 2 to 3 (open-telemetry#1277)

    * Add owent as an Approver (open-telemetry#1276)

    * add owent as reviewer

    * fix order

    * Disable benchmark action failure (open-telemetry#1284)

    * metrics exemplar round 1 (open-telemetry#1264)

    * [Metrics SDK] - fix spelling (AggregationTemporarily to AggregationTemporality) (open-telemetry#1288)

    * fix compilation error with protobuf 3.5 (open-telemetry#1289)

    * Fix span SetAttribute crash (open-telemetry#1283)

    * Synchronous Metric collection (Delta , Cumulative) (open-telemetry#1265)

    * Rename `http_client_curl` to `opentelemetry_http_client_curl` (open-telemetry#1301)

    Signed-off-by: owent <[email protected]>

    * Don't show coverage annotation for pull requests (open-telemetry#1304)

    * Implement periodic exporting metric reader (open-telemetry#1286)

    * Add `async-changes` branch to pull_request of github action (open-telemetry#1309)

    Signed-off-by: owent <[email protected]>

    * Add InstrumentationInfo and Resource to the metrics data to be exported. (open-telemetry#1299)

    * Excempt should be applied on issue instead of PR (open-telemetry#1316)

    * Bump codecov/codecov-action from 2.1.0 to 3 (open-telemetry#1318)

    * Move public definitions into `opentelemetry_api`. (open-telemetry#1314)

    Signed-off-by: owent <[email protected]>

    * Add building test without RTTI (open-telemetry#1294)

    * Remove implicitly deleted default constructor (open-telemetry#1267)

    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * [ETW Exporter] - ETW provider handle cleanup (open-telemetry#1322)

    * Bump actions/stale from 4 to 5 (open-telemetry#1323)

    * ostream metrics example (open-telemetry#1312)

    * Prepare v1.3.0 release (open-telemetry#1324)

    * Update yield logic for ARM processor (open-telemetry#1325)

    * Fix for open-telemetry#1292 (open-telemetry#1326)

    * Implement Merge and Diff operation for Histogram Aggregation (open-telemetry#1303)

    * fix metrics compiler warnings (open-telemetry#1328)

    * Replace deprecated googletest API (open-telemetry#1327)

    * Remove redundant tail / in CMake install (open-telemetry#1329)

    * dependencies image as artifact (open-telemetry#1333)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * metrics histogram example (open-telemetry#1330)

    * Link `opentelemetry_ext` with `opentelemetry_api` (open-telemetry#1336)

    * ostream metrics cmake (open-telemetry#1344)

    * Fix conflicts

    Signed-off-by: owent <[email protected]>

    * Using clang-format-10 to format codes(clang-format-14 has a different output)

    Signed-off-by: owent <[email protected]>

    Co-authored-by: Ehsan Saei <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>
    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Ben Landrum <[email protected]>
    Co-authored-by: jmanjon <[email protected]>

commit 73f3515
Author: WenTao Ou <[email protected]>
Date:   Wed Apr 6 15:41:42 2022 +0800

    Merge main into async changes (open-telemetry#1321)

commit ad3bdfe
Author: DEBAJIT DAS <[email protected]>
Date:   Thu Mar 31 09:56:24 2022 +0530

    Added feature flag for asynchronous export (open-telemetry#1295)

commit 15e7725
Author: WenTao Ou <[email protected]>
Date:   Tue Mar 29 13:09:11 2022 +0800

    Cocurrency otlp http session (open-telemetry#1281)

commit 729c2f8
Author: DEBAJIT DAS <[email protected]>
Date:   Tue Mar 22 23:47:14 2022 +0530

    Changing the type of callback function in Export function to std::function (open-telemetry#1278)

commit 6f53da3
Author: DEBAJIT DAS <[email protected]>
Date:   Mon Mar 21 19:31:51 2022 +0530

    Async callback Exporter to Processor changes  (open-telemetry#1275)

commit c3eaa9d
Author: WenTao Ou <[email protected]>
Date:   Mon Mar 21 14:41:51 2022 +0800

    Cocurrency otlp http session (open-telemetry#1274)
owent added a commit to owent/opentelemetry-cpp that referenced this pull request Jun 15, 2022
commit f357102
Author: WenTao Ou <[email protected]>
Date:   Wed Jun 15 22:40:39 2022 +0800

    Merge main into async changes (open-telemetry#1451)

    * install sdk config (open-telemetry#1273)

    * Bump actions/cache from 2 to 3 (open-telemetry#1277)

    * Add owent as an Approver (open-telemetry#1276)

    * add owent as reviewer

    * fix order

    * Disable benchmark action failure (open-telemetry#1284)

    * metrics exemplar round 1 (open-telemetry#1264)

    * [Metrics SDK] - fix spelling (AggregationTemporarily to AggregationTemporality) (open-telemetry#1288)

    * fix compilation error with protobuf 3.5 (open-telemetry#1289)

    * Fix span SetAttribute crash (open-telemetry#1283)

    * Synchronous Metric collection (Delta , Cumulative) (open-telemetry#1265)

    * Rename `http_client_curl` to `opentelemetry_http_client_curl` (open-telemetry#1301)

    Signed-off-by: owent <[email protected]>

    * Don't show coverage annotation for pull requests (open-telemetry#1304)

    * Implement periodic exporting metric reader (open-telemetry#1286)

    * Add `async-changes` branch to pull_request of github action (open-telemetry#1309)

    Signed-off-by: owent <[email protected]>

    * Add InstrumentationInfo and Resource to the metrics data to be exported. (open-telemetry#1299)

    * Excempt should be applied on issue instead of PR (open-telemetry#1316)

    * Bump codecov/codecov-action from 2.1.0 to 3 (open-telemetry#1318)

    * Move public definitions into `opentelemetry_api`. (open-telemetry#1314)

    Signed-off-by: owent <[email protected]>

    * Add building test without RTTI (open-telemetry#1294)

    * Remove implicitly deleted default constructor (open-telemetry#1267)

    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * [ETW Exporter] - ETW provider handle cleanup (open-telemetry#1322)

    * Bump actions/stale from 4 to 5 (open-telemetry#1323)

    * ostream metrics example (open-telemetry#1312)

    * Prepare v1.3.0 release (open-telemetry#1324)

    * Update yield logic for ARM processor (open-telemetry#1325)

    * Fix for open-telemetry#1292 (open-telemetry#1326)

    * Implement Merge and Diff operation for Histogram Aggregation (open-telemetry#1303)

    * fix metrics compiler warnings (open-telemetry#1328)

    * Replace deprecated googletest API (open-telemetry#1327)

    * Remove redundant tail / in CMake install (open-telemetry#1329)

    * dependencies image as artifact (open-telemetry#1333)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * metrics histogram example (open-telemetry#1330)

    * Link `opentelemetry_ext` with `opentelemetry_api` (open-telemetry#1336)

    * ostream metrics cmake (open-telemetry#1344)

    * prometheus exporter (open-telemetry#1331)

    * remove exporter registration to meter provider (open-telemetry#1350)

    * Bump github/codeql-action from 1 to 2 (open-telemetry#1351)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

    * Add explicit type cast in baggage UrlDecode (open-telemetry#1353)

    * Fix scalar delete against array (open-telemetry#1356)

    * conditional include for codecvt header (open-telemetry#1355)

    * Add missing include guard (open-telemetry#1357)

    * Use latest TraceLoggingDynamic.h (open-telemetry#1354)

    * prometheus example (open-telemetry#1332)

    * Fix output time in metrics OStream exporter (open-telemetry#1346)

    * Simplify SDK Configuration: Use View with default aggregation if no matching View is configured (open-telemetry#1358)

    * Fix class member initialization order (open-telemetry#1360)

    * codecov ignore (open-telemetry#1364)

    * export opentelemetry_otlp_recordable (open-telemetry#1365)

    * Disable test on prometheus-cpp which not need (open-telemetry#1363)

    * Enable metric collection for Async Instruments - Delta and Cumulative  (open-telemetry#1334)

    * fix baggage propagation for empty/invalid baggage context (open-telemetry#1367)

    * Fix empty tracestate header propagation (open-telemetry#1373)

    * Bump docker/setup-qemu-action from 1 to 2 (open-telemetry#1375)

    * Add noexcept/const qualifier at missing places for Trace API. (open-telemetry#1374)

    * fix noxcept

    * fix etw

    * Bump docker/build-push-action from 2 to 3 (open-telemetry#1377)

    * Bump docker/setup-buildx-action from 1 to 2 (open-telemetry#1376)

    * [Metrics SDK] Remove un-necessary files. (open-telemetry#1379)

    * reuse temporal metric storage for sync storage (open-telemetry#1369)

    * Prometheus exporter meters and instrument name (open-telemetry#1378)

    * Fix sharing resource in batched exported spans (open-telemetry#1386)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * fix: missing link to nlohmann_json (open-telemetry#1390)

    * Getting started document using ostream exporter (open-telemetry#1394)

    Co-authored-by: Reiley Yang <[email protected]>

    * Connect async storage with async instruments (open-telemetry#1388)

    * get span_id from context when Logger::Log received invalid span_id  (open-telemetry#1398)

    * Alpine image (open-telemetry#1382)

    * Upgrade proto to v0.17.0, update log data model (open-telemetry#1383)

    * Prepare v1.4.0 release (open-telemetry#1404)

    * Fix vcpkg package name in doc (open-telemetry#1392)

    * Document Getting Started with Prometheus and Grafana (open-telemetry#1396)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * fix OTEL_INTERNAL_LOG_INFO (open-telemetry#1407)

    * fix: WaitOnSocket select error when sockfd above FD_SETSIZE (open-telemetry#1410)

    * [BUILD] fix nlohmann_json's (third party) include dir (open-telemetry#1415)

    * [Metrics API/SDK] - Pass state to async callback function. (open-telemetry#1408)

    * Copy string_view passed to ETW exporter in PropertyVariant (open-telemetry#1425)

    * Fix ETW log exporter header inclusion (open-telemetry#1426)

    * [Metrics SDK] Only record non-negative / finite / Non-NAN histogram values (open-telemetry#1427)

    * validate histogram value

    * handle Nan

    * add changelog

    * divide by 0 error on windows

    * fix markdown lint

    * Fix global log handle symbols when using dlopen (open-telemetry#1420)

    * Add attributes/dimensions to metrics ostream exporter (open-telemetry#1400)

    * Log current timestamp instead of epoch time (open-telemetry#1434)

    * install sdk-config.h (open-telemetry#1419)

    * Fix GettingStarted documentation for Jaeger HTTP exporter (open-telemetry#1347) (open-telemetry#1439)

    * fix histogram (open-telemetry#1440)

    * Upgrade nlohmann_json to 3.10.5 (open-telemetry#1438) (open-telemetry#1441)

    * Fixed broken link to OpenTelemetry.io (open-telemetry#1445) (open-telemetry#1446)

    Co-authored-by: Ehsan Saei <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>
    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Ben Landrum <[email protected]>
    Co-authored-by: jmanjon <[email protected]>
    Co-authored-by: Zsolt Bölöny <[email protected]>
    Co-authored-by: Leo Di Donato <[email protected]>
    Co-authored-by: Reiley Yang <[email protected]>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>
    Co-authored-by: Hamed Mansouri <[email protected]>
    Co-authored-by: ztao <[email protected]>
    Co-authored-by: Flier Lu <[email protected]>
    Co-authored-by: Marc Alff <[email protected]>
    Co-authored-by: Marc Alff <[email protected]>

commit d7b03e8
Author: WenTao Ou <[email protected]>
Date:   Fri May 20 13:25:24 2022 +0800

    Merge main into async changes (open-telemetry#1411)

commit 0aebd6e
Author: WenTao Ou <[email protected]>
Date:   Mon May 16 23:26:41 2022 +0800

    Merge main into async changes (open-telemetry#1395)

commit 08a12b5
Author: WenTao Ou <[email protected]>
Date:   Thu May 12 00:51:48 2022 +0800

    Cocurrency otlp http session (open-telemetry#1317)

commit c614258
Author: DEBAJIT DAS <[email protected]>
Date:   Wed May 4 22:55:20 2022 +0530

     Added max async export support using separate AsyncBatchSpan/LogProcessor (open-telemetry#1306)

commit 465158c
Author: WenTao Ou <[email protected]>
Date:   Mon Apr 25 23:48:02 2022 +0800

    Merge `main` into `async-changes` (open-telemetry#1348)

    * install sdk config (open-telemetry#1273)

    * Bump actions/cache from 2 to 3 (open-telemetry#1277)

    * Add owent as an Approver (open-telemetry#1276)

    * add owent as reviewer

    * fix order

    * Disable benchmark action failure (open-telemetry#1284)

    * metrics exemplar round 1 (open-telemetry#1264)

    * [Metrics SDK] - fix spelling (AggregationTemporarily to AggregationTemporality) (open-telemetry#1288)

    * fix compilation error with protobuf 3.5 (open-telemetry#1289)

    * Fix span SetAttribute crash (open-telemetry#1283)

    * Synchronous Metric collection (Delta , Cumulative) (open-telemetry#1265)

    * Rename `http_client_curl` to `opentelemetry_http_client_curl` (open-telemetry#1301)

    Signed-off-by: owent <[email protected]>

    * Don't show coverage annotation for pull requests (open-telemetry#1304)

    * Implement periodic exporting metric reader (open-telemetry#1286)

    * Add `async-changes` branch to pull_request of github action (open-telemetry#1309)

    Signed-off-by: owent <[email protected]>

    * Add InstrumentationInfo and Resource to the metrics data to be exported. (open-telemetry#1299)

    * Excempt should be applied on issue instead of PR (open-telemetry#1316)

    * Bump codecov/codecov-action from 2.1.0 to 3 (open-telemetry#1318)

    * Move public definitions into `opentelemetry_api`. (open-telemetry#1314)

    Signed-off-by: owent <[email protected]>

    * Add building test without RTTI (open-telemetry#1294)

    * Remove implicitly deleted default constructor (open-telemetry#1267)

    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * [ETW Exporter] - ETW provider handle cleanup (open-telemetry#1322)

    * Bump actions/stale from 4 to 5 (open-telemetry#1323)

    * ostream metrics example (open-telemetry#1312)

    * Prepare v1.3.0 release (open-telemetry#1324)

    * Update yield logic for ARM processor (open-telemetry#1325)

    * Fix for open-telemetry#1292 (open-telemetry#1326)

    * Implement Merge and Diff operation for Histogram Aggregation (open-telemetry#1303)

    * fix metrics compiler warnings (open-telemetry#1328)

    * Replace deprecated googletest API (open-telemetry#1327)

    * Remove redundant tail / in CMake install (open-telemetry#1329)

    * dependencies image as artifact (open-telemetry#1333)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * metrics histogram example (open-telemetry#1330)

    * Link `opentelemetry_ext` with `opentelemetry_api` (open-telemetry#1336)

    * ostream metrics cmake (open-telemetry#1344)

    * Fix conflicts

    Signed-off-by: owent <[email protected]>

    * Using clang-format-10 to format codes(clang-format-14 has a different output)

    Signed-off-by: owent <[email protected]>

    Co-authored-by: Ehsan Saei <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>
    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Ben Landrum <[email protected]>
    Co-authored-by: jmanjon <[email protected]>

commit 73f3515
Author: WenTao Ou <[email protected]>
Date:   Wed Apr 6 15:41:42 2022 +0800

    Merge main into async changes (open-telemetry#1321)

commit ad3bdfe
Author: DEBAJIT DAS <[email protected]>
Date:   Thu Mar 31 09:56:24 2022 +0530

    Added feature flag for asynchronous export (open-telemetry#1295)

commit 15e7725
Author: WenTao Ou <[email protected]>
Date:   Tue Mar 29 13:09:11 2022 +0800

    Cocurrency otlp http session (open-telemetry#1281)

commit 729c2f8
Author: DEBAJIT DAS <[email protected]>
Date:   Tue Mar 22 23:47:14 2022 +0530

    Changing the type of callback function in Export function to std::function (open-telemetry#1278)

commit 6f53da3
Author: DEBAJIT DAS <[email protected]>
Date:   Mon Mar 21 19:31:51 2022 +0530

    Async callback Exporter to Processor changes  (open-telemetry#1275)

commit c3eaa9d
Author: WenTao Ou <[email protected]>
Date:   Mon Mar 21 14:41:51 2022 +0800

    Cocurrency otlp http session (open-telemetry#1274)
owent added a commit to owent/opentelemetry-cpp that referenced this pull request Jun 17, 2022
commit daf5091
Author: WenTao Ou <[email protected]>
Date:   Fri Jun 17 14:49:27 2022 +0800

    Implement open-telemetry/opentelemetry-specification#2452 (open-telemetry#1456)

    * install sdk config (open-telemetry#1273)

    * Bump actions/cache from 2 to 3 (open-telemetry#1277)

    * Add owent as an Approver (open-telemetry#1276)

    * add owent as reviewer

    * fix order

    * Disable benchmark action failure (open-telemetry#1284)

    * metrics exemplar round 1 (open-telemetry#1264)

    * [Metrics SDK] - fix spelling (AggregationTemporarily to AggregationTemporality) (open-telemetry#1288)

    * fix compilation error with protobuf 3.5 (open-telemetry#1289)

    * Fix span SetAttribute crash (open-telemetry#1283)

    * Synchronous Metric collection (Delta , Cumulative) (open-telemetry#1265)

    * Rename `http_client_curl` to `opentelemetry_http_client_curl` (open-telemetry#1301)

    Signed-off-by: owent <[email protected]>

    * Don't show coverage annotation for pull requests (open-telemetry#1304)

    * Implement periodic exporting metric reader (open-telemetry#1286)

    * Add `async-changes` branch to pull_request of github action (open-telemetry#1309)

    Signed-off-by: owent <[email protected]>

    * Add InstrumentationInfo and Resource to the metrics data to be exported. (open-telemetry#1299)

    * Excempt should be applied on issue instead of PR (open-telemetry#1316)

    * Bump codecov/codecov-action from 2.1.0 to 3 (open-telemetry#1318)

    * Move public definitions into `opentelemetry_api`. (open-telemetry#1314)

    Signed-off-by: owent <[email protected]>

    * Add building test without RTTI (open-telemetry#1294)

    * Remove implicitly deleted default constructor (open-telemetry#1267)

    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * [ETW Exporter] - ETW provider handle cleanup (open-telemetry#1322)

    * Bump actions/stale from 4 to 5 (open-telemetry#1323)

    * ostream metrics example (open-telemetry#1312)

    * Prepare v1.3.0 release (open-telemetry#1324)

    * Update yield logic for ARM processor (open-telemetry#1325)

    * Fix for open-telemetry#1292 (open-telemetry#1326)

    * Implement Merge and Diff operation for Histogram Aggregation (open-telemetry#1303)

    * fix metrics compiler warnings (open-telemetry#1328)

    * Replace deprecated googletest API (open-telemetry#1327)

    * Remove redundant tail / in CMake install (open-telemetry#1329)

    * dependencies image as artifact (open-telemetry#1333)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * metrics histogram example (open-telemetry#1330)

    * Link `opentelemetry_ext` with `opentelemetry_api` (open-telemetry#1336)

    * ostream metrics cmake (open-telemetry#1344)

    * prometheus exporter (open-telemetry#1331)

    * remove exporter registration to meter provider (open-telemetry#1350)

    * Bump github/codeql-action from 1 to 2 (open-telemetry#1351)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

    * Add explicit type cast in baggage UrlDecode (open-telemetry#1353)

    * Fix scalar delete against array (open-telemetry#1356)

    * conditional include for codecvt header (open-telemetry#1355)

    * Add missing include guard (open-telemetry#1357)

    * Use latest TraceLoggingDynamic.h (open-telemetry#1354)

    * prometheus example (open-telemetry#1332)

    * Fix output time in metrics OStream exporter (open-telemetry#1346)

    * Simplify SDK Configuration: Use View with default aggregation if no matching View is configured (open-telemetry#1358)

    * Fix class member initialization order (open-telemetry#1360)

    * codecov ignore (open-telemetry#1364)

    * export opentelemetry_otlp_recordable (open-telemetry#1365)

    * Disable test on prometheus-cpp which not need (open-telemetry#1363)

    * Enable metric collection for Async Instruments - Delta and Cumulative  (open-telemetry#1334)

    * fix baggage propagation for empty/invalid baggage context (open-telemetry#1367)

    * Fix empty tracestate header propagation (open-telemetry#1373)

    * Bump docker/setup-qemu-action from 1 to 2 (open-telemetry#1375)

    * Add noexcept/const qualifier at missing places for Trace API. (open-telemetry#1374)

    * fix noxcept

    * fix etw

    * Bump docker/build-push-action from 2 to 3 (open-telemetry#1377)

    * Bump docker/setup-buildx-action from 1 to 2 (open-telemetry#1376)

    * [Metrics SDK] Remove un-necessary files. (open-telemetry#1379)

    * reuse temporal metric storage for sync storage (open-telemetry#1369)

    * Prometheus exporter meters and instrument name (open-telemetry#1378)

    * Fix sharing resource in batched exported spans (open-telemetry#1386)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * fix: missing link to nlohmann_json (open-telemetry#1390)

    * Getting started document using ostream exporter (open-telemetry#1394)

    Co-authored-by: Reiley Yang <[email protected]>

    * Connect async storage with async instruments (open-telemetry#1388)

    * get span_id from context when Logger::Log received invalid span_id  (open-telemetry#1398)

    * Alpine image (open-telemetry#1382)

    * Upgrade proto to v0.17.0, update log data model (open-telemetry#1383)

    * Prepare v1.4.0 release (open-telemetry#1404)

    * Fix vcpkg package name in doc (open-telemetry#1392)

    * Document Getting Started with Prometheus and Grafana (open-telemetry#1396)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * fix OTEL_INTERNAL_LOG_INFO (open-telemetry#1407)

    * fix: WaitOnSocket select error when sockfd above FD_SETSIZE (open-telemetry#1410)

    * [BUILD] fix nlohmann_json's (third party) include dir (open-telemetry#1415)

    * [Metrics API/SDK] - Pass state to async callback function. (open-telemetry#1408)

    * Copy string_view passed to ETW exporter in PropertyVariant (open-telemetry#1425)

    * Fix ETW log exporter header inclusion (open-telemetry#1426)

    * [Metrics SDK] Only record non-negative / finite / Non-NAN histogram values (open-telemetry#1427)

    * validate histogram value

    * handle Nan

    * add changelog

    * divide by 0 error on windows

    * fix markdown lint

    * Fix global log handle symbols when using dlopen (open-telemetry#1420)

    * Add attributes/dimensions to metrics ostream exporter (open-telemetry#1400)

    * Log current timestamp instead of epoch time (open-telemetry#1434)

    * install sdk-config.h (open-telemetry#1419)

    * Fix GettingStarted documentation for Jaeger HTTP exporter (open-telemetry#1347) (open-telemetry#1439)

    * fix histogram (open-telemetry#1440)

    * Upgrade nlohmann_json to 3.10.5 (open-telemetry#1438) (open-telemetry#1441)

    * Fixed broken link to OpenTelemetry.io (open-telemetry#1445) (open-telemetry#1446)

    * Fix variables inizialization (open-telemetry#1430)

    * Remove `AsyncBatch*Processor`, implement [opentelemetry-specification#2452](open-telemetry/opentelemetry-specification#2452)

    Signed-off-by: WenTao Ou <[email protected]>

    * Remove invalid changelog

    Signed-off-by: WenTao Ou <[email protected]>

    * Fix compiling problems without `ENABLE_ASYNC_EXPORT`

    Signed-off-by: WenTao Ou <[email protected]>

    * Always return `ExportResult::kSuccess`

    Signed-off-by: WenTao Ou <[email protected]>

    Co-authored-by: Ehsan Saei <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>
    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Ben Landrum <[email protected]>
    Co-authored-by: jmanjon <[email protected]>
    Co-authored-by: Zsolt Bölöny <[email protected]>
    Co-authored-by: Leo Di Donato <[email protected]>
    Co-authored-by: Reiley Yang <[email protected]>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>
    Co-authored-by: Hamed Mansouri <[email protected]>
    Co-authored-by: ztao <[email protected]>
    Co-authored-by: Flier Lu <[email protected]>
    Co-authored-by: Marc Alff <[email protected]>
    Co-authored-by: Marc Alff <[email protected]>
    Co-authored-by: univisionsrl <[email protected]>

commit f357102
Author: WenTao Ou <[email protected]>
Date:   Wed Jun 15 22:40:39 2022 +0800

    Merge main into async changes (open-telemetry#1451)

    * install sdk config (open-telemetry#1273)

    * Bump actions/cache from 2 to 3 (open-telemetry#1277)

    * Add owent as an Approver (open-telemetry#1276)

    * add owent as reviewer

    * fix order

    * Disable benchmark action failure (open-telemetry#1284)

    * metrics exemplar round 1 (open-telemetry#1264)

    * [Metrics SDK] - fix spelling (AggregationTemporarily to AggregationTemporality) (open-telemetry#1288)

    * fix compilation error with protobuf 3.5 (open-telemetry#1289)

    * Fix span SetAttribute crash (open-telemetry#1283)

    * Synchronous Metric collection (Delta , Cumulative) (open-telemetry#1265)

    * Rename `http_client_curl` to `opentelemetry_http_client_curl` (open-telemetry#1301)

    Signed-off-by: owent <[email protected]>

    * Don't show coverage annotation for pull requests (open-telemetry#1304)

    * Implement periodic exporting metric reader (open-telemetry#1286)

    * Add `async-changes` branch to pull_request of github action (open-telemetry#1309)

    Signed-off-by: owent <[email protected]>

    * Add InstrumentationInfo and Resource to the metrics data to be exported. (open-telemetry#1299)

    * Excempt should be applied on issue instead of PR (open-telemetry#1316)

    * Bump codecov/codecov-action from 2.1.0 to 3 (open-telemetry#1318)

    * Move public definitions into `opentelemetry_api`. (open-telemetry#1314)

    Signed-off-by: owent <[email protected]>

    * Add building test without RTTI (open-telemetry#1294)

    * Remove implicitly deleted default constructor (open-telemetry#1267)

    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * [ETW Exporter] - ETW provider handle cleanup (open-telemetry#1322)

    * Bump actions/stale from 4 to 5 (open-telemetry#1323)

    * ostream metrics example (open-telemetry#1312)

    * Prepare v1.3.0 release (open-telemetry#1324)

    * Update yield logic for ARM processor (open-telemetry#1325)

    * Fix for open-telemetry#1292 (open-telemetry#1326)

    * Implement Merge and Diff operation for Histogram Aggregation (open-telemetry#1303)

    * fix metrics compiler warnings (open-telemetry#1328)

    * Replace deprecated googletest API (open-telemetry#1327)

    * Remove redundant tail / in CMake install (open-telemetry#1329)

    * dependencies image as artifact (open-telemetry#1333)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * metrics histogram example (open-telemetry#1330)

    * Link `opentelemetry_ext` with `opentelemetry_api` (open-telemetry#1336)

    * ostream metrics cmake (open-telemetry#1344)

    * prometheus exporter (open-telemetry#1331)

    * remove exporter registration to meter provider (open-telemetry#1350)

    * Bump github/codeql-action from 1 to 2 (open-telemetry#1351)

    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

    * Add explicit type cast in baggage UrlDecode (open-telemetry#1353)

    * Fix scalar delete against array (open-telemetry#1356)

    * conditional include for codecvt header (open-telemetry#1355)

    * Add missing include guard (open-telemetry#1357)

    * Use latest TraceLoggingDynamic.h (open-telemetry#1354)

    * prometheus example (open-telemetry#1332)

    * Fix output time in metrics OStream exporter (open-telemetry#1346)

    * Simplify SDK Configuration: Use View with default aggregation if no matching View is configured (open-telemetry#1358)

    * Fix class member initialization order (open-telemetry#1360)

    * codecov ignore (open-telemetry#1364)

    * export opentelemetry_otlp_recordable (open-telemetry#1365)

    * Disable test on prometheus-cpp which not need (open-telemetry#1363)

    * Enable metric collection for Async Instruments - Delta and Cumulative  (open-telemetry#1334)

    * fix baggage propagation for empty/invalid baggage context (open-telemetry#1367)

    * Fix empty tracestate header propagation (open-telemetry#1373)

    * Bump docker/setup-qemu-action from 1 to 2 (open-telemetry#1375)

    * Add noexcept/const qualifier at missing places for Trace API. (open-telemetry#1374)

    * fix noxcept

    * fix etw

    * Bump docker/build-push-action from 2 to 3 (open-telemetry#1377)

    * Bump docker/setup-buildx-action from 1 to 2 (open-telemetry#1376)

    * [Metrics SDK] Remove un-necessary files. (open-telemetry#1379)

    * reuse temporal metric storage for sync storage (open-telemetry#1369)

    * Prometheus exporter meters and instrument name (open-telemetry#1378)

    * Fix sharing resource in batched exported spans (open-telemetry#1386)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * fix: missing link to nlohmann_json (open-telemetry#1390)

    * Getting started document using ostream exporter (open-telemetry#1394)

    Co-authored-by: Reiley Yang <[email protected]>

    * Connect async storage with async instruments (open-telemetry#1388)

    * get span_id from context when Logger::Log received invalid span_id  (open-telemetry#1398)

    * Alpine image (open-telemetry#1382)

    * Upgrade proto to v0.17.0, update log data model (open-telemetry#1383)

    * Prepare v1.4.0 release (open-telemetry#1404)

    * Fix vcpkg package name in doc (open-telemetry#1392)

    * Document Getting Started with Prometheus and Grafana (open-telemetry#1396)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * fix OTEL_INTERNAL_LOG_INFO (open-telemetry#1407)

    * fix: WaitOnSocket select error when sockfd above FD_SETSIZE (open-telemetry#1410)

    * [BUILD] fix nlohmann_json's (third party) include dir (open-telemetry#1415)

    * [Metrics API/SDK] - Pass state to async callback function. (open-telemetry#1408)

    * Copy string_view passed to ETW exporter in PropertyVariant (open-telemetry#1425)

    * Fix ETW log exporter header inclusion (open-telemetry#1426)

    * [Metrics SDK] Only record non-negative / finite / Non-NAN histogram values (open-telemetry#1427)

    * validate histogram value

    * handle Nan

    * add changelog

    * divide by 0 error on windows

    * fix markdown lint

    * Fix global log handle symbols when using dlopen (open-telemetry#1420)

    * Add attributes/dimensions to metrics ostream exporter (open-telemetry#1400)

    * Log current timestamp instead of epoch time (open-telemetry#1434)

    * install sdk-config.h (open-telemetry#1419)

    * Fix GettingStarted documentation for Jaeger HTTP exporter (open-telemetry#1347) (open-telemetry#1439)

    * fix histogram (open-telemetry#1440)

    * Upgrade nlohmann_json to 3.10.5 (open-telemetry#1438) (open-telemetry#1441)

    * Fixed broken link to OpenTelemetry.io (open-telemetry#1445) (open-telemetry#1446)

    Co-authored-by: Ehsan Saei <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>
    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Ben Landrum <[email protected]>
    Co-authored-by: jmanjon <[email protected]>
    Co-authored-by: Zsolt Bölöny <[email protected]>
    Co-authored-by: Leo Di Donato <[email protected]>
    Co-authored-by: Reiley Yang <[email protected]>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>
    Co-authored-by: Hamed Mansouri <[email protected]>
    Co-authored-by: ztao <[email protected]>
    Co-authored-by: Flier Lu <[email protected]>
    Co-authored-by: Marc Alff <[email protected]>
    Co-authored-by: Marc Alff <[email protected]>

commit d7b03e8
Author: WenTao Ou <[email protected]>
Date:   Fri May 20 13:25:24 2022 +0800

    Merge main into async changes (open-telemetry#1411)

commit 0aebd6e
Author: WenTao Ou <[email protected]>
Date:   Mon May 16 23:26:41 2022 +0800

    Merge main into async changes (open-telemetry#1395)

commit 08a12b5
Author: WenTao Ou <[email protected]>
Date:   Thu May 12 00:51:48 2022 +0800

    Cocurrency otlp http session (open-telemetry#1317)

commit c614258
Author: DEBAJIT DAS <[email protected]>
Date:   Wed May 4 22:55:20 2022 +0530

     Added max async export support using separate AsyncBatchSpan/LogProcessor (open-telemetry#1306)

commit 465158c
Author: WenTao Ou <[email protected]>
Date:   Mon Apr 25 23:48:02 2022 +0800

    Merge `main` into `async-changes` (open-telemetry#1348)

    * install sdk config (open-telemetry#1273)

    * Bump actions/cache from 2 to 3 (open-telemetry#1277)

    * Add owent as an Approver (open-telemetry#1276)

    * add owent as reviewer

    * fix order

    * Disable benchmark action failure (open-telemetry#1284)

    * metrics exemplar round 1 (open-telemetry#1264)

    * [Metrics SDK] - fix spelling (AggregationTemporarily to AggregationTemporality) (open-telemetry#1288)

    * fix compilation error with protobuf 3.5 (open-telemetry#1289)

    * Fix span SetAttribute crash (open-telemetry#1283)

    * Synchronous Metric collection (Delta , Cumulative) (open-telemetry#1265)

    * Rename `http_client_curl` to `opentelemetry_http_client_curl` (open-telemetry#1301)

    Signed-off-by: owent <[email protected]>

    * Don't show coverage annotation for pull requests (open-telemetry#1304)

    * Implement periodic exporting metric reader (open-telemetry#1286)

    * Add `async-changes` branch to pull_request of github action (open-telemetry#1309)

    Signed-off-by: owent <[email protected]>

    * Add InstrumentationInfo and Resource to the metrics data to be exported. (open-telemetry#1299)

    * Excempt should be applied on issue instead of PR (open-telemetry#1316)

    * Bump codecov/codecov-action from 2.1.0 to 3 (open-telemetry#1318)

    * Move public definitions into `opentelemetry_api`. (open-telemetry#1314)

    Signed-off-by: owent <[email protected]>

    * Add building test without RTTI (open-telemetry#1294)

    * Remove implicitly deleted default constructor (open-telemetry#1267)

    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * [ETW Exporter] - ETW provider handle cleanup (open-telemetry#1322)

    * Bump actions/stale from 4 to 5 (open-telemetry#1323)

    * ostream metrics example (open-telemetry#1312)

    * Prepare v1.3.0 release (open-telemetry#1324)

    * Update yield logic for ARM processor (open-telemetry#1325)

    * Fix for open-telemetry#1292 (open-telemetry#1326)

    * Implement Merge and Diff operation for Histogram Aggregation (open-telemetry#1303)

    * fix metrics compiler warnings (open-telemetry#1328)

    * Replace deprecated googletest API (open-telemetry#1327)

    * Remove redundant tail / in CMake install (open-telemetry#1329)

    * dependencies image as artifact (open-telemetry#1333)

    Co-authored-by: Lalit Kumar Bhasin <[email protected]>

    * metrics histogram example (open-telemetry#1330)

    * Link `opentelemetry_ext` with `opentelemetry_api` (open-telemetry#1336)

    * ostream metrics cmake (open-telemetry#1344)

    * Fix conflicts

    Signed-off-by: owent <[email protected]>

    * Using clang-format-10 to format codes(clang-format-14 has a different output)

    Signed-off-by: owent <[email protected]>

    Co-authored-by: Ehsan Saei <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Lalit Kumar Bhasin <[email protected]>
    Co-authored-by: Tom Tan <[email protected]>
    Co-authored-by: Ben Landrum <[email protected]>
    Co-authored-by: jmanjon <[email protected]>

commit 73f3515
Author: WenTao Ou <[email protected]>
Date:   Wed Apr 6 15:41:42 2022 +0800

    Merge main into async changes (open-telemetry#1321)

commit ad3bdfe
Author: DEBAJIT DAS <[email protected]>
Date:   Thu Mar 31 09:56:24 2022 +0530

    Added feature flag for asynchronous export (open-telemetry#1295)

commit 15e7725
Author: WenTao Ou <[email protected]>
Date:   Tue Mar 29 13:09:11 2022 +0800

    Cocurrency otlp http session (open-telemetry#1281)

commit 729c2f8
Author: DEBAJIT DAS <[email protected]>
Date:   Tue Mar 22 23:47:14 2022 +0530

    Changing the type of callback function in Export function to std::function (open-telemetry#1278)

commit 6f53da3
Author: DEBAJIT DAS <[email protected]>
Date:   Mon Mar 21 19:31:51 2022 +0530

    Async callback Exporter to Processor changes  (open-telemetry#1275)

commit c3eaa9d
Author: WenTao Ou <[email protected]>
Date:   Mon Mar 21 14:41:51 2022 +0800

    Cocurrency otlp http session (open-telemetry#1274)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants