-
Notifications
You must be signed in to change notification settings - Fork 438
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
[WIP] foundation for building with contrib + sockets library - main repo part I #871
Conversation
…y-cpp into maxgolov/fluentd_exporter
…y-cpp into maxgolov/fluentd_exporter
…emetry/opentelemetry-cpp into maxgolov/fluentd_exporter
…y-cpp into maxgolov/fluentd_exporter
Codecov Report
@@ Coverage Diff @@
## main #871 +/- ##
==========================================
- Coverage 95.50% 94.88% -0.62%
==========================================
Files 156 158 +2
Lines 6620 6810 +190
==========================================
+ Hits 6322 6461 +139
- Misses 298 349 +51
|
@@ -121,6 +121,86 @@ | |||
"type": "BOOL" | |||
} | |||
] | |||
} | |||
] | |||
}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will remove this. This is just an illustration how to build with contrib from Visual Studio. I'll move this into separate document.
@@ -14,6 +14,8 @@ using namespace OPENTELEMETRY_NAMESPACE; | |||
|
|||
using namespace opentelemetry::exporter::etw; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will revert this, as I submitted these changes in a separate PR #882
I would review it more thoroughly once this is ready for review, the general comments I have for now are:
|
Closing this PR. Plan is to consolidate these changes with fluentd exporter in the |
Changes
PR implements the necessary plumbing for
fluentd
/fluentbit
exporters that live in contrib repo. Since we already have a library for basic cross-plat sockets support (used by HTTP server), I refactored that library to support TCP, UDP and Unix Domain sockets. Subsequently,fluentd
exporter uses that library to talk to end-point over TCP, UDP or Unix Domain.To explain the structure:
/ext/include/opentelemetry/ext/net/common
- network library, socket client, socket server. Reusable, (still) used by HTTP server. Now with more sockets support, i.e. in addition to TCP (that was already there) - I added UDP and Unix Domain./ext/test/sockets
- cross-plat tests for the sockets.CMakeLists.txt
- that allows to build with contrib specified via local directory, or byFetchContent
from contrib repo.Subsequently, contrib repo part II relies on some generic / general purpose code that lives in the main, e.g. in order to avoid reimplementing the same socket library again. The code is Apache License 2.0, all copyright OpenTelemetry Authors. No need to borrow any alternate BSD or Boost -licensed network library.
@lalitb - corresponding PR for the
fluentd
exporter is in the contrib repo is here:open-telemetry/opentelemetry-cpp-contrib#42