Program Listing for File event_logger.h
↰ Return to documentation for file (/tmp/B.puc0r6hi/BUILD/opentelemetry-cpp-1.27.0-build/opentelemetry-cpp-1.27.0/sdk/include/opentelemetry/sdk/logs/event_logger.h)
// Copyright The OpenTelemetry Authors
// SPDX-License-Identifier: Apache-2.0
#pragma once
#include <string>
#include "opentelemetry/logs/event_logger.h"
#include "opentelemetry/logs/log_record.h"
#include "opentelemetry/logs/logger.h"
#include "opentelemetry/nostd/shared_ptr.h"
#include "opentelemetry/nostd/string_view.h"
#include "opentelemetry/nostd/unique_ptr.h"
#include "opentelemetry/version.h"
OPENTELEMETRY_BEGIN_NAMESPACE
namespace sdk
{
namespace logs
{
#if OPENTELEMETRY_ABI_VERSION_NO < 2
class EventLogger final : public opentelemetry::logs::EventLogger
{
public:
explicit EventLogger(nostd::shared_ptr<opentelemetry::logs::Logger> delegate_logger,
nostd::string_view event_domain) noexcept;
const opentelemetry::nostd::string_view GetName() noexcept override;
nostd::shared_ptr<opentelemetry::logs::Logger> GetDelegateLogger() noexcept override;
using opentelemetry::logs::EventLogger::EmitEvent;
void EmitEvent(nostd::string_view event_name,
nostd::unique_ptr<opentelemetry::logs::LogRecord> &&log_record) noexcept override;
private:
nostd::shared_ptr<opentelemetry::logs::Logger> delegate_logger_;
std::string event_domain_;
};
#endif
} // namespace logs
} // namespace sdk
OPENTELEMETRY_END_NAMESPACE