This is a major issue, because a lot of user code will be instrumented for logs, and these mistakes will happen again and again, creating the perception that opentelemetry-cpp does not work for logs.
Code such as:
logger->EmitLogRecord(record);
MUST fail to build instead of ignoring the record argument.
Consider the following code:
This code builds, executes, and produces empty log records downstream.
The issue is that this method is invoked:
The log record given in arguments is ignored, and a dummy record, not populated, is used instead.
To fix this, the user code needs to change to:
which will invoke:
This is a major issue, because a lot of user code will be instrumented for logs, and these mistakes will happen again and again, creating the perception that opentelemetry-cpp does not work for logs.
Code such as:
MUST fail to build instead of ignoring the record argument.