|
prom 0.1.0
Client-independent C++23 Prometheus/OpenMetrics metric abstraction
|
A swappable adapter slot shared by every metric that reads from it. More...
#include <global.hpp>


Public Member Functions | |
| AdapterCell () | |
| AdapterCell (AdapterPtr adapter) | |
Construct with adapter (or a fresh NullAdapter when null). | |
| std::uint64_t | version () const noexcept override |
| Monotonic counter, bumped on every adapter swap. | |
| AdapterPtr | adapter () const override |
| The current adapter, never null. | |
| void | set_adapter (AdapterPtr adapter) |
Install adapter as the new backend (or reset to a fresh NullAdapter when null) and bump the version so reading metrics re-register. | |
Public Member Functions inherited from prom::AdapterSource | |
| AdapterSource ()=default | |
| AdapterSource (const AdapterSource &)=delete | |
| AdapterSource & | operator= (const AdapterSource &)=delete |
| AdapterSource (AdapterSource &&)=delete | |
| AdapterSource & | operator= (AdapterSource &&)=delete |
| virtual | ~AdapterSource ()=default |
A swappable adapter slot shared by every metric that reads from it.
Holds a NullAdapter by default; set_adapter installs a new backend and bumps version(), which is how already-created metrics learn to re-register against the new adapter on their next use.
|
inline |
|
inlineexplicit |
Construct with adapter (or a fresh NullAdapter when null).
|
inlineoverridevirtual |
The current adapter, never null.
Returns a shared_ptr copy so a concurrent swap cannot invalidate the adapter an in-flight caller uses.
Implements prom::AdapterSource.
|
inline |
Install adapter as the new backend (or reset to a fresh NullAdapter when null) and bump the version so reading metrics re-register.
|
inlineoverridevirtualnoexcept |
Monotonic counter, bumped on every adapter swap.
Implements prom::AdapterSource.