iceberg-cpp
Loading...
Searching...
No Matches
Classes | Typedefs | Variables
metrics_reporters.h File Reference

Factory for creating MetricsReporter instances. More...

#include <functional>
#include <memory>
#include <string>
#include <string_view>
#include <unordered_map>
#include <unordered_set>
#include "iceberg/iceberg_export.h"
#include "iceberg/metrics/metrics_reporter.h"
#include "iceberg/result.h"

Go to the source code of this file.

Classes

class  iceberg::CompositeMetricsReporter
 A MetricsReporter that delegates to multiple reporters. More...
 
class  iceberg::MetricsReporters
 Factory class for creating and managing MetricsReporter instances. More...
 

Typedefs

using iceberg::MetricsReporterFactory = std::function< Result< std::unique_ptr< MetricsReporter > >(const std::unordered_map< std::string, std::string > &properties)>
 Function type for creating MetricsReporter instances.
 

Variables

constexpr std::string_view iceberg::kMetricsReporterImpl = "metrics-reporter-impl"
 Property key for configuring the metrics reporter implementation.
 
constexpr std::string_view iceberg::kMetricsReporterTypeNoop = "noop"
 Property value for the noop metrics reporter.
 

Detailed Description

Factory for creating MetricsReporter instances.

Typedef Documentation

◆ MetricsReporterFactory

using iceberg::MetricsReporterFactory = typedef std::function<Result<std::unique_ptr<MetricsReporter> >( const std::unordered_map<std::string, std::string>& properties)>

Function type for creating MetricsReporter instances.

Parameters
propertiesConfiguration properties for the reporter.
Returns
A new MetricsReporter instance or an error.

Variable Documentation

◆ kMetricsReporterImpl

constexpr std::string_view iceberg::kMetricsReporterImpl = "metrics-reporter-impl"
constexpr

Property key for configuring the metrics reporter implementation.

Set this property in catalog properties to specify which metrics reporter implementation to use. The value should match a registered reporter type.