Description
Describe the issue
I don't really use absl::log
, but a library I depend on uses it. It logs a bunch of "garbage" (unrelated to my project) that appears on the stderr. It includes the message:
WARNING: All log messages before absl::InitializeLog() is called are written to STDERR
Now I'm adding an earlier call in my program to absl::InitializeLog()
in an attempt to eliminate the noise. But I noticed the library I use also eventually calls absl::InitializeLog()
.
Checking the documentation of absl::InitializeLog
it's an error to call it more than once.
More generically, a project and one or more of its dependencies may need to call absl::InitializeLog
, and there is no way to coordinate this across completely independent libraries -- ideally, libraries should never call it but ... it happens -- see Google's XLA as an example.
Hence my bug/feature request to make InitializeLog
safe to be called multiple times -- a no-op if it has already been called.
ps.: I'm no expert on absl
library, it's very likely there is nuance I'm missing.
Steps to reproduce the problem
Use two libraries where both call absl::InitializeLog()
What version of Abseil are you using?
Head.
What operating system and version are you using?
Ubuntu, various versions.
What compiler and version are you using?
clang
What build system are you using?
bazel
Additional context
No response