Skip to content

Commit 59e7281

Browse files
authored
[CONFIGURATION] File configuration - ostream exporter builders (open-telemetry#3563)
1 parent f28ea95 commit 59e7281

File tree

6 files changed

+206
-0
lines changed

6 files changed

+206
-0
lines changed
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
// Copyright The OpenTelemetry Authors
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
#pragma once
5+
6+
#include <memory>
7+
8+
#include "opentelemetry/sdk/configuration/console_log_record_exporter_builder.h"
9+
#include "opentelemetry/sdk/configuration/console_log_record_exporter_configuration.h"
10+
#include "opentelemetry/sdk/configuration/registry.h"
11+
#include "opentelemetry/sdk/logs/exporter.h"
12+
#include "opentelemetry/version.h"
13+
14+
OPENTELEMETRY_BEGIN_NAMESPACE
15+
namespace exporter
16+
{
17+
namespace logs
18+
{
19+
20+
class OPENTELEMETRY_EXPORT ConsoleLogRecordBuilder
21+
: public opentelemetry::sdk::configuration::ConsoleLogRecordExporterBuilder
22+
{
23+
public:
24+
static void Register(opentelemetry::sdk::configuration::Registry *registry);
25+
26+
std::unique_ptr<opentelemetry::sdk::logs::LogRecordExporter> Build(
27+
const opentelemetry::sdk::configuration::ConsoleLogRecordExporterConfiguration *model)
28+
const override;
29+
};
30+
31+
} // namespace logs
32+
} // namespace exporter
33+
OPENTELEMETRY_END_NAMESPACE
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
// Copyright The OpenTelemetry Authors
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
#pragma once
5+
6+
#include <memory>
7+
8+
#include "opentelemetry/sdk/configuration/console_push_metric_exporter_builder.h"
9+
#include "opentelemetry/sdk/configuration/console_push_metric_exporter_configuration.h"
10+
#include "opentelemetry/sdk/configuration/registry.h"
11+
#include "opentelemetry/sdk/metrics/push_metric_exporter.h"
12+
#include "opentelemetry/version.h"
13+
14+
OPENTELEMETRY_BEGIN_NAMESPACE
15+
namespace exporter
16+
{
17+
namespace metrics
18+
{
19+
20+
class OPENTELEMETRY_EXPORT ConsolePushMetricBuilder
21+
: public opentelemetry::sdk::configuration::ConsolePushMetricExporterBuilder
22+
{
23+
public:
24+
static void Register(opentelemetry::sdk::configuration::Registry *registry);
25+
26+
std::unique_ptr<opentelemetry::sdk::metrics::PushMetricExporter> Build(
27+
const opentelemetry::sdk::configuration::ConsolePushMetricExporterConfiguration *model)
28+
const override;
29+
};
30+
31+
} // namespace metrics
32+
} // namespace exporter
33+
OPENTELEMETRY_END_NAMESPACE
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
// Copyright The OpenTelemetry Authors
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
#pragma once
5+
6+
#include <memory>
7+
8+
#include "opentelemetry/sdk/configuration/console_span_exporter_builder.h"
9+
#include "opentelemetry/sdk/configuration/console_span_exporter_configuration.h"
10+
#include "opentelemetry/sdk/configuration/registry.h"
11+
#include "opentelemetry/sdk/trace/exporter.h"
12+
#include "opentelemetry/version.h"
13+
14+
OPENTELEMETRY_BEGIN_NAMESPACE
15+
namespace exporter
16+
{
17+
namespace trace
18+
{
19+
20+
class OPENTELEMETRY_EXPORT ConsoleSpanBuilder
21+
: public opentelemetry::sdk::configuration::ConsoleSpanExporterBuilder
22+
{
23+
public:
24+
static void Register(opentelemetry::sdk::configuration::Registry *registry);
25+
26+
std::unique_ptr<opentelemetry::sdk::trace::SpanExporter> Build(
27+
const opentelemetry::sdk::configuration::ConsoleSpanExporterConfiguration *model)
28+
const override;
29+
};
30+
31+
} // namespace trace
32+
} // namespace exporter
33+
OPENTELEMETRY_END_NAMESPACE
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
// Copyright The OpenTelemetry Authors
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
#include <memory>
5+
#include <utility>
6+
7+
#include "opentelemetry/exporters/ostream/console_log_record_builder.h"
8+
#include "opentelemetry/exporters/ostream/log_record_exporter_factory.h"
9+
#include "opentelemetry/sdk/configuration/console_log_record_exporter_builder.h"
10+
#include "opentelemetry/sdk/configuration/console_log_record_exporter_configuration.h"
11+
#include "opentelemetry/sdk/configuration/registry.h"
12+
#include "opentelemetry/sdk/logs/exporter.h"
13+
#include "opentelemetry/version.h"
14+
15+
OPENTELEMETRY_BEGIN_NAMESPACE
16+
namespace exporter
17+
{
18+
namespace logs
19+
{
20+
21+
void ConsoleLogRecordBuilder::Register(opentelemetry::sdk::configuration::Registry *registry)
22+
{
23+
auto builder = std::make_unique<ConsoleLogRecordBuilder>();
24+
registry->SetConsoleLogRecordBuilder(std::move(builder));
25+
}
26+
27+
std::unique_ptr<opentelemetry::sdk::logs::LogRecordExporter> ConsoleLogRecordBuilder::Build(
28+
const opentelemetry::sdk::configuration::ConsoleLogRecordExporterConfiguration * /* model */)
29+
const
30+
{
31+
return OStreamLogRecordExporterFactory::Create();
32+
}
33+
34+
} // namespace logs
35+
} // namespace exporter
36+
OPENTELEMETRY_END_NAMESPACE
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
// Copyright The OpenTelemetry Authors
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
#include <memory>
5+
#include <utility>
6+
7+
#include "opentelemetry/exporters/ostream/console_push_metric_builder.h"
8+
#include "opentelemetry/exporters/ostream/metric_exporter_factory.h"
9+
#include "opentelemetry/sdk/configuration/console_push_metric_exporter_builder.h"
10+
#include "opentelemetry/sdk/configuration/console_push_metric_exporter_configuration.h"
11+
#include "opentelemetry/sdk/configuration/registry.h"
12+
#include "opentelemetry/sdk/metrics/push_metric_exporter.h"
13+
#include "opentelemetry/version.h"
14+
15+
OPENTELEMETRY_BEGIN_NAMESPACE
16+
namespace exporter
17+
{
18+
namespace metrics
19+
{
20+
21+
void ConsolePushMetricBuilder::Register(opentelemetry::sdk::configuration::Registry *registry)
22+
{
23+
auto builder = std::make_unique<ConsolePushMetricBuilder>();
24+
registry->SetConsolePushMetricExporterBuilder(std::move(builder));
25+
}
26+
27+
std::unique_ptr<opentelemetry::sdk::metrics::PushMetricExporter> ConsolePushMetricBuilder::Build(
28+
const opentelemetry::sdk::configuration::ConsolePushMetricExporterConfiguration * /* model */)
29+
const
30+
{
31+
return OStreamMetricExporterFactory::Create();
32+
}
33+
34+
} // namespace metrics
35+
} // namespace exporter
36+
OPENTELEMETRY_END_NAMESPACE
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
// Copyright The OpenTelemetry Authors
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
#include <memory>
5+
#include <utility>
6+
7+
#include "opentelemetry/exporters/ostream/console_span_builder.h"
8+
#include "opentelemetry/exporters/ostream/span_exporter_factory.h"
9+
#include "opentelemetry/sdk/configuration/console_span_exporter_builder.h"
10+
#include "opentelemetry/sdk/configuration/console_span_exporter_configuration.h"
11+
#include "opentelemetry/sdk/configuration/registry.h"
12+
#include "opentelemetry/sdk/trace/exporter.h"
13+
#include "opentelemetry/version.h"
14+
15+
OPENTELEMETRY_BEGIN_NAMESPACE
16+
namespace exporter
17+
{
18+
namespace trace
19+
{
20+
21+
void ConsoleSpanBuilder::Register(opentelemetry::sdk::configuration::Registry *registry)
22+
{
23+
auto builder = std::make_unique<ConsoleSpanBuilder>();
24+
registry->SetConsoleSpanBuilder(std::move(builder));
25+
}
26+
27+
std::unique_ptr<opentelemetry::sdk::trace::SpanExporter> ConsoleSpanBuilder::Build(
28+
const opentelemetry::sdk::configuration::ConsoleSpanExporterConfiguration * /* model */) const
29+
{
30+
return OStreamSpanExporterFactory::Create();
31+
}
32+
33+
} // namespace trace
34+
} // namespace exporter
35+
OPENTELEMETRY_END_NAMESPACE

0 commit comments

Comments
 (0)