BloombergLP::ball::RecordJsonFormatter

This class provides a function object that formats a log record as JSON text elements and renders them to an output stream.

Synopsis

Declared in <ball_recordjsonformatter.h>

class RecordJsonFormatter;

Description

The overloaded operator() provided by the class formats log record according to a message format specification supplied either by setJsonFormat or setSimplifiedFormat manipulator or the default format installed by the constructor) and outputs the result to the stream. While this functor type is designed to match the function signature expected by many concrete ball::Observer implementations that publish log records (for example, see ball::FileObserver2::setLogFileFunctor) it is advised to use the more flexible scheme-based format selection provided now by every BDE-made observer.

Type Aliases

NameDescription
FieldFormatters FieldFormatters is an alias for a vector of field-formatter pointers.
allocator_type This typedef is an alias for the allocator used by this object.

Enums

NameDescription
SpecSyntax Enumerator to determine the syntax of the specification string.

Member Functions

NameDescription
RecordJsonFormatter [constructor]Constructors
~RecordJsonFormatter [destructor]Destroy this object.
operator= Assignment operators
allocator [deprecated]DEPRECATED: Use get_allocator().mechanism() instead.
format Return the message format specification of this record JSON formatter.
formatSyntax Return the message format specification syntax of this record JSON formatter. See {Record Format Specification}.
get_allocator Return the allocator used by this object to supply memory.
operator() Format the specified record according to the current format and recordSeparator to the specified stream.
recordSeparator Return the record separator of this record JSON formatter.
setFormat DEPRECATED: Use setJsonFormat instead.
setJsonFormat Set this formatter's JSON message format specification to format.
setRecordSeparator Set the record separator for this record JSON formatter to the specified recordSeparator.
setSimplifiedFormat Parse a simplified format specification and configure this formatter.
setTimezoneDefault Set the default time zone for timestamps without a timezone in the format.
timezoneDefault Get the time zone default setting.

Static Member Functions

NameDescription
loadJsonSchemeFormatter Configure a "json"-scheme formatter and load it into output.
loadQjsonSchemeFormatter Configure a "qjson"-scheme formatter and load it into output.

Non-Member Functions

NameDescription
operator!=Return true if the specified lhs and rhs record formatters do not have the same value, and false otherwise.
operator==Return true if the specified lhs and rhs record formatters have the same value, and false otherwise.