[#BloombergLP-ball-LoggerManager-allocateLogger-0e]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/ball.adoc[ball]::xref:BloombergLP/ball/LoggerManager.adoc[LoggerManager]::allocateLogger
:relfileprefix: ../../../
:mrdocs:

`allocateLogger` overloads

== Synopses

Declared in `&lt;ball&lowbar;loggermanager&period;h&gt;`

Allocate a logger managed by this logger manager&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/ball/Logger.adoc[Logger]*
xref:BloombergLP/ball/LoggerManager/allocateLogger-0163.adoc[allocateLogger](xref:BloombergLP/ball/RecordBuffer.adoc[RecordBuffer]* buffer);
----

[.small]#xref:BloombergLP/ball/LoggerManager/allocateLogger-0163.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload, using the specified `scratchBufferSize`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/ball/Logger.adoc[Logger]*
xref:BloombergLP/ball/LoggerManager/allocateLogger-09.adoc[allocateLogger](
    xref:BloombergLP/ball/RecordBuffer.adoc[RecordBuffer]* buffer,
    int scratchBufferSize);
----

[.small]#xref:BloombergLP/ball/LoggerManager/allocateLogger-09.adoc[_» more&period;&period;&period;_]#

Allocate a logger with the specified shared observer and buffer&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/ball/Logger.adoc[Logger]*
xref:BloombergLP/ball/LoggerManager/allocateLogger-0f.adoc[allocateLogger](
    xref:BloombergLP/ball/RecordBuffer.adoc[RecordBuffer]* buffer,
    xref:bsl/shared_ptr-0a.adoc[bsl::shared&lowbar;ptr&lt;Observer&gt;] const& observer);
----

[.small]#xref:BloombergLP/ball/LoggerManager/allocateLogger-0f.adoc[_» more&period;&period;&period;_]#

Allocate a logger with the specified raw observer and record buffer&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/ball/Logger.adoc[Logger]*
xref:BloombergLP/ball/LoggerManager/allocateLogger-06.adoc[allocateLogger](
    xref:BloombergLP/ball/RecordBuffer.adoc[RecordBuffer]* buffer,
    xref:BloombergLP/ball/Observer.adoc[Observer]* observer);
----

[.small]#xref:BloombergLP/ball/LoggerManager/allocateLogger-06.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload, using the specified `scratchBufferSize`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/ball/Logger.adoc[Logger]*
xref:BloombergLP/ball/LoggerManager/allocateLogger-0168.adoc[allocateLogger](
    xref:BloombergLP/ball/RecordBuffer.adoc[RecordBuffer]* buffer,
    int scratchBufferSize,
    xref:bsl/shared_ptr-0a.adoc[bsl::shared&lowbar;ptr&lt;Observer&gt;] const& observer);
----

[.small]#xref:BloombergLP/ball/LoggerManager/allocateLogger-0168.adoc[_» more&period;&period;&period;_]#

Same as the preceding deprecated overload, using the specified `scratchBufferSize`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/ball/Logger.adoc[Logger]*
xref:BloombergLP/ball/LoggerManager/allocateLogger-04.adoc[allocateLogger](
    xref:BloombergLP/ball/RecordBuffer.adoc[RecordBuffer]* buffer,
    int scratchBufferSize,
    xref:BloombergLP/ball/Observer.adoc[Observer]* observer);
----

[.small]#xref:BloombergLP/ball/LoggerManager/allocateLogger-04.adoc[_» more&period;&period;&period;_]#

== Return Value

address of a modifiable logger managed by this logger manager

== Parameters

[cols="1,4"]
|===
| Name| Description
| *buffer*
| record buffer used to configure the logger
| *scratchBufferSize*
| size of the logger&apos;s message buffer
| *observer*
| observer that receives published log records
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
