Address spec compliance issue (SetName method is deprecated and removed) #183
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
SetName
method is now removed in the mainline base class, based on Log spec update here:open-telemetry/opentelemetry-cpp#1383
open-telemetry/opentelemetry-cpp@280f546
This causes the contrib
fluentd
build break when the code is compiled with latest OpenTelemetry SDK!List of changes:
Code change : remove
override
attribute in fluentdlog/recordable.h
. But keep the method for now. Need to figure out what to do with it in the long run. One possibility is to shim the method toSetAttribute("name", value)
in a way that won't be affecting the code / customers that might still be using it.Code change : resolve compilation warnings in examples if
HAVE_CONSOLE_LOG
has been defined as a build option in the upper level makefile.NEW - non-invasive build infra option : allow to build
fluentd
exporter inside the main build tree viaadd_directory
. Main idea here is borrowed from nlohmann-json projectCMakeLists.txt
. If fluentd exporter is plugged into the build viaadd_directory
into main OpenTelemetry C++ SDK, then don't really need to post a separate package of it. And don't need to provide own config. As a result - artifacts get deployed as part of the main project install, in one build loop rather than in two build loops. Much faster. The other option (clone and build as main project) still there, without any functional changes to its behavior. I'll supply a separateREADME.md
for that "fast deployment" later. That's what we use in our Docker image builds / CI pipeline elsewhere.