15 #ifndef ALEXA_CLIENT_SDK_METRICS_METRICRECORDER_INCLUDE_METRICS_METRICRECORDER_H_ 16 #define ALEXA_CLIENT_SDK_METRICS_METRICRECORDER_INCLUDE_METRICS_METRICRECORDER_H_ 18 #include <unordered_set> 26 namespace implementations {
40 std::unique_ptr<alexaClientSDK::avsCommon::utils::metrics::MetricSinkInterface> sink);
54 bool addSink(std::unique_ptr<alexaClientSDK::avsCommon::utils::metrics::MetricSinkInterface> sink);
58 void recordMetric(std::shared_ptr<alexaClientSDK::avsCommon::utils::metrics::MetricEvent> metricEvent)
override;
63 std::unordered_set<std::unique_ptr<alexaClientSDK::avsCommon::utils::metrics::MetricSinkInterface>> m_sinks;
73 #endif // ALEXA_CLIENT_SDK_METRICS_METRICRECORDER_INCLUDE_METRICS_METRICRECORDER_H_ bool addSink(std::unique_ptr< alexaClientSDK::avsCommon::utils::metrics::MetricSinkInterface > sink)
Single-thread executor implementation.
Definition: Executor.h:45
void recordMetric(std::shared_ptr< alexaClientSDK::avsCommon::utils::metrics::MetricEvent > metricEvent) override
Definition: MetricRecorderInterface.h:28
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
static std::shared_ptr< MetricRecorderInterface > createMetricRecorderInterface(std::unique_ptr< alexaClientSDK::avsCommon::utils::metrics::MetricSinkInterface > sink)
Definition: MetricRecorder.h:31
virtual ~MetricRecorder()=default