diff options
Diffstat (limited to 'src/jaegertracing/opentelemetry-cpp/sdk/include/opentelemetry/sdk/_metrics/exporter.h')
-rw-r--r-- | src/jaegertracing/opentelemetry-cpp/sdk/include/opentelemetry/sdk/_metrics/exporter.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/jaegertracing/opentelemetry-cpp/sdk/include/opentelemetry/sdk/_metrics/exporter.h b/src/jaegertracing/opentelemetry-cpp/sdk/include/opentelemetry/sdk/_metrics/exporter.h new file mode 100644 index 000000000..aae416527 --- /dev/null +++ b/src/jaegertracing/opentelemetry-cpp/sdk/include/opentelemetry/sdk/_metrics/exporter.h @@ -0,0 +1,35 @@ +// Copyright The OpenTelemetry Authors +// SPDX-License-Identifier: Apache-2.0 + +#pragma once +#ifdef ENABLE_METRICS_PREVIEW + +# include <memory> +# include "opentelemetry/sdk/_metrics/record.h" +# include "opentelemetry/sdk/common/exporter_utils.h" + +OPENTELEMETRY_BEGIN_NAMESPACE +namespace sdk +{ +namespace metrics +{ +/** + * MetricsExporter defines the interface that protocol-specific span exporters must + * implement. + */ +class MetricsExporter +{ +public: + virtual ~MetricsExporter() = default; + + /** + * Exports a vector of Records. This method must not be called + * concurrently for the same exporter instance. + * @param records a vector of unique pointers to metric records + */ + virtual sdk::common::ExportResult Export(const std::vector<Record> &records) noexcept = 0; +}; +} // namespace metrics +} // namespace sdk +OPENTELEMETRY_END_NAMESPACE +#endif |