|
iceberg-cpp
|
A MetricsReporter that delegates to multiple reporters. More...
#include <metrics_reporters.h>
Public Member Functions | |
| CompositeMetricsReporter (std::unordered_set< std::shared_ptr< MetricsReporter > > reporters) | |
| Status | Report (const MetricsReport &report) override |
| Report a metrics report. | |
| const std::unordered_set< std::shared_ptr< MetricsReporter > > & | Reporters () const |
| The reporters contained in this composite. | |
Public Member Functions inherited from iceberg::MetricsReporter | |
| virtual Status | Initialize (const std::unordered_map< std::string, std::string > &properties) |
| Initialize the reporter with catalog properties after construction. | |
A MetricsReporter that delegates to multiple reporters.
Combines several reporters so that every report is delivered to each of them. Implementations must not throw; return an error Status instead. All reporters receive the report regardless of individual failures. If any reporters fail, the first error Status is returned.
Use MetricsReporters::Combine() to create instances — that helper flattens nested composites and deduplicates reporters by identity.
|
overridevirtual |
Report a metrics report.
Implementations should handle the report according to their purpose (e.g., logging, sending to a metrics service, etc.).
| report | The metrics report to process. |
Implements iceberg::MetricsReporter.
| const std::unordered_set< std::shared_ptr< MetricsReporter > > & iceberg::CompositeMetricsReporter::Reporters | ( | ) | const |
The reporters contained in this composite.
Used by MetricsReporters::Combine() for flattening.