[#BloombergLP-balm-MetricsManager-publish-03e] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/balm.adoc[balm]::xref:BloombergLP/balm/MetricsManager.adoc[MetricsManager]::publish :relfileprefix: ../../../ :mrdocs: Publish metrics belonging to the specified sequence of (unique) `categories`, of specified length `numCategories`. Optionally specify a `resetFlag` that determines if the collected metrics are reset as part of this operation. This operation will collect aggregated metric values for each _enabled_ category in `categories` from registered callbacks as well as from its own `CollectorRepository`, and then publish those records using any publishers associated with the category. Any individual category in `categories` that is not enabled is ignored. If `resetFlag` is `true`, the metrics being collected are reset to their default state. The metrics manager provides publishers the time interval over which the published metrics were collected. This interval is computed as the elapsed time since the last time the `category` was reset (either through a call to the `publish` or `collectSample` methods). If a category has not previously been reset then this interval is taken to be the elapsed time since the creation of this metrics manager. The behavior is undefined unless `0 <= numCategories`, `categories` refers to a contiguous sequence of (at least) `numCategories`, and each category in `categories` appears only once. == Synopsis Declared in `<balm_metricsmanager.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- void publish( xref:BloombergLP/balm/Category.adoc[Category] const const* categories[], int numCategories, bool resetFlag = true); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#