[#BloombergLP-ball-LoggerManager-registerObserver] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/ball.adoc[ball]::xref:BloombergLP/ball/LoggerManager.adoc[LoggerManager]::registerObserver :relfileprefix: ../../../ :mrdocs: Add the specified `observer` with the specified `observerName` to the registry of observers maintained by this logger manager. Return 0 if `observer` was successfully registered with this logger manager, and a non‐zero value (with no effect) otherwise. Henceforth, all log records published by this logger manager are published to this observer, until `observer` is deregistered. The behavior is undefined if a cyclic reference is created among registered observers. Note that this method will fail if an observer having `observerName` is already registered. == Synopsis Declared in `<ball_loggermanager.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- int registerObserver( xref:bsl/shared_ptr-0a.adoc[bsl::shared_ptr<Observer>] const& observer, std::string_view const& observerName); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#