[#BloombergLP-ball-Log-logMessage-0b] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/ball.adoc[ball]::xref:BloombergLP/ball/Log.adoc[Log]::logMessage :relfileprefix: ../../../ :mrdocs: Log the specified `record` after setting its category attribute to the specified `category` and its severity attribute to the specified `severity`. (See the component‐level documentation of `ball_record` for more information on the fields that are logged.) Store the record in the buffer held by the logger if `severity` is at least as severe as the current "Record" threshold level of `category`. Pass the record directly to the registered observer if `severity` is at least as severe as the current "Pass" threshold level of `category`. Publish the entire contents of the buffer of the logger if `severity` is at least as severe as the current "Trigger" threshold level of `category`. Publish the entire contents of all buffers of all loggers if `severity` is at least as severe as the current "Trigger‐All" threshold level of `category` (i.e., via the callback supplied at construction of the logger manager singleton). Finally, dispose of `record`. This method has no effect (other than disposing of `record`) if `severity` is less severe than each of the threshold levels of `category`. The behavior is undefined unless `severity` is in the range `[1 .. 255]`, `record` was obtained by a call to `Log::getRecord`, and, if `category` is not 0, the logger manager singleton is initialized. Note that `record` will be invalid after this method returns. == Synopsis Declared in `<ball_log.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- static void logMessage( xref:BloombergLP/ball/Category.adoc[Category] const* category, int severity, xref:BloombergLP/ball/Record.adoc[Record]* record); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#