Although you can stream into LOG(INFO), you can't pass it into a function that takes a std::ostream parameter. LogStreamer::stream() provides a std::ostream that buffers everything that's streamed in. The buffer's contents are logged as if by LOG when the LogStreamer is destroyed. If nothing is streamed in, an empty message is logged. If the specified severity is absl::LogSeverity::kFatal, the program will be terminated when the LogStreamer is destroyed regardless of whether any data were streamed in.
Declared in <absl/log/log_streamer.h>
class LogStreamer final
Factory functions corresponding to the absl::LogSeverity enumerators are provided for convenience; if the desired severity is variable, invoke the constructor directly.
LogStreamer is movable, but not copyable.
Examples:
ShaveYakAndWriteToStream( yak, absl::LogInfoStreamer(FILE, LINE).stream());
{ // This logs a single line containing data streamed by all three function // calls. absl::LogStreamer streamer(absl::LogSeverity::kInfo, FILE, LINE); ShaveYakAndWriteToStream(yak1, streamer.stream()); streamer.stream() << " "; ShaveYakAndWriteToStream(yak2, streamer.stream()); streamer.stream() << " "; ShaveYakAndWriteToStreamPointer(yak3, &streamer.stream()); }
| Name | Description |
|---|---|
LogStreamer [constructor] | Constructors |
~LogStreamer [destructor] | Logs this LogStreamer's buffered content as if by LOG. |
operator= | Logs this LogStreamer's current buffered content, then moves the state of that into this LogStreamer. |
stream | Returns the std::ostream to use to write into this LogStreamer's internal buffer. |
| Name | Description |
|---|---|
LogDebugFatalStreamer | Returns a LogStreamer that writes at level LogSeverity::kLogDebugFatal. |
LogDebugFatalStreamer | Returns a LogStreamer that writes at level LogSeverity::kLogDebugFatal. |
LogErrorStreamer | Returns a LogStreamer that writes at level LogSeverity::kError. |
LogErrorStreamer | Returns a LogStreamer that writes at level LogSeverity::kError. |
LogFatalStreamer | Returns a LogStreamer that writes at level LogSeverity::kFatal. |
LogFatalStreamer | Returns a LogStreamer that writes at level LogSeverity::kFatal. |
LogInfoStreamer | Returns a LogStreamer that writes at level LogSeverity::kInfo. |
LogInfoStreamer | Returns a LogStreamer that writes at level LogSeverity::kInfo. |
LogWarningStreamer | Returns a LogStreamer that writes at level LogSeverity::kWarning. |
LogWarningStreamer | Returns a LogStreamer that writes at level LogSeverity::kWarning. |