Replies: 1 comment 2 replies
-
|
Thanks for the request and your interest in Abseil. While we do hope that Abseil is useful to the C++ community at large, the library's primary function is to act as the stable foundation for Google’s codebase. Because Abseil is an open-source export of the code we use daily, our development is strictly driven by the requirements of Google-developed projects. Unfortunately, this means we generally cannot accept feature requests for functionality that we don't currently need ourselves. Adding features without a Google-driven use-case creates a maintenance burden and compatibility issues that are difficult for us to justify. We appreciate your understanding of these constraints. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Deferred logging support
Background
In production systems, it can be hard to debug intermittent issues. On the one hand, you want to have as much information as possible. On the other hand, excessive verbosity makes it hard to distinguish signal from noise and uses resources unnecessarily.
Deferred logging, also known as backtrace logging helps with this problem by adding certain log statements to a ring buffer and only outputting them if a certain condition is met in the future. This way, you can log what happened before something went wrong, without being spammed about cases where everything worked as intended.
Proposed API changes
We propose adding the following logging macros:
LOG_DEFERRED,LOG_DEFERRED_IF, andVLOG_DEFERRED. They will behave like the corresponding undeferred macros, except instead of logging a given line, they will add it to a ring buffer.We also propose adding the following functions:
Questions
Beta Was this translation helpful? Give feedback.
All reactions