absl::LogStreamer

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.

Synopsis

Declared in <absl/log/log_streamer.h>

class LogStreamer final

Description

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()); }

Member Functions

NameDescription
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.

Non-Member Functions

NameDescription
LogDebugFatalStreamerReturns a LogStreamer that writes at level LogSeverity::kLogDebugFatal.
LogDebugFatalStreamerReturns a LogStreamer that writes at level LogSeverity::kLogDebugFatal.
LogErrorStreamerReturns a LogStreamer that writes at level LogSeverity::kError.
LogErrorStreamerReturns a LogStreamer that writes at level LogSeverity::kError.
LogFatalStreamerReturns a LogStreamer that writes at level LogSeverity::kFatal.
LogFatalStreamerReturns a LogStreamer that writes at level LogSeverity::kFatal.
LogInfoStreamerReturns a LogStreamer that writes at level LogSeverity::kInfo.
LogInfoStreamerReturns a LogStreamer that writes at level LogSeverity::kInfo.
LogWarningStreamerReturns a LogStreamer that writes at level LogSeverity::kWarning.
LogWarningStreamerReturns a LogStreamer that writes at level LogSeverity::kWarning.