NAME
OpenTelemetry::Proto - The protobuf definitions for the OpenTelemetry Protocol
SYNOPSIS
use OpenTelemetry::Proto;
my $blob = OpenTelemetry::Proto::Collector::Trace::V1::ExportTraceServiceRequest
->new_and_check(\%payload)
->encode;
$useragent->post( $url => { content => $blob } );
DESCRIPTION
This module contains Perl bindings for the OTLP Protobuf interface. These can be used to decode OTLP binary data into Perl data structures, or to do the inverse and encode Perl data structures into OTLP binary data. It is used most notably by OpenTelemetry::Exporter::OTLP to encode the data it sends when using a binary encoding.
Importing this module will import all the classes generated from the v1.2.0 OTLP language-independent interface type definitions available at the OTLP specification repository.
These classes are generated using Google::ProtocolBuffers::Dynamic internally, so please consult the documentation of that distribution (Google::ProtocolBuffers::Dynamic::Message in particular) for details on the methods that can be called on them.
CLASSES
This section lists the classes that become available by importing this module. Each entry links to the definition of that protobuf message in the specification. Please refer to these for details on their fields and their meanings.
- OpenTelemetry::Proto::Collector::Logs::V1::ExportLogsServiceRequest
- OpenTelemetry::Proto::Collector::Logs::V1::ExportLogsServiceResponse
- OpenTelemetry::Proto::Collector::Logs::V1::ExportLogsPartialSuccess
- OpenTelemetry::Proto::Collector::Metrics::V1::ExportMetricsServiceRequest
- OpenTelemetry::Proto::Collector::Metrics::V1::ExportMetricsServiceResponse
- OpenTelemetry::Proto::Collector::Metrics::V1::ExportMetricsPartialSuccess
- OpenTelemetry::Proto::Collector::Trace::V1::ExportTraceServiceRequest
- OpenTelemetry::Proto::Collector::Trace::V1::ExportTraceServiceResponse
- OpenTelemetry::Proto::Collector::Trace::V1::ExportTracePartialSuccess
- OpenTelemetry::Proto::Common::V1::AnyValue
- OpenTelemetry::Proto::Common::V1::ArrayValue
- OpenTelemetry::Proto::Common::V1::KeyValueList
- OpenTelemetry::Proto::Common::V1::KeyValue
- OpenTelemetry::Proto::Common::V1::InstrumentationScope
- OpenTelemetry::Proto::Logs::V1::LogsData
- OpenTelemetry::Proto::Logs::V1::ResourceLogs
- OpenTelemetry::Proto::Logs::V1::ScopeLogs
- OpenTelemetry::Proto::Logs::V1::LogRecord
- OpenTelemetry::Proto::Metrics::V1::MetricsData
- OpenTelemetry::Proto::Metrics::V1::ResourceMetrics
- OpenTelemetry::Proto::Metrics::V1::ScopeMetrics
- OpenTelemetry::Proto::Metrics::V1::Metric
- OpenTelemetry::Proto::Metrics::V1::Gauge
- OpenTelemetry::Proto::Metrics::V1::Sum
- OpenTelemetry::Proto::Metrics::V1::Histogram
- OpenTelemetry::Proto::Metrics::V1::ExponentialHistogram
- OpenTelemetry::Proto::Metrics::V1::Summary
- OpenTelemetry::Proto::Metrics::V1::NumberDataPoint
- OpenTelemetry::Proto::Metrics::V1::HistogramDataPoint
- OpenTelemetry::Proto::Metrics::V1::ExponentialHistogramDataPoint
- OpenTelemetry::Proto::Metrics::V1::SummaryDataPoint
- OpenTelemetry::Proto::Metrics::V1::Exemplar
- OpenTelemetry::Proto::Resource::V1::Resource
- OpenTelemetry::Proto::Trace::V1::TracesData
- OpenTelemetry::Proto::Trace::V1::ResourceSpans
- OpenTelemetry::Proto::Trace::V1::ScopeSpans
- OpenTelemetry::Proto::Trace::V1::Span
- OpenTelemetry::Proto::Trace::V1::Status
SEE ALSO
ACKNOWLEDGEMENTS
Special thanks to CV-Library Ltd. for their support in the development of this library.
COPYRIGHT AND LICENSE
This software is copyright (c) 2023 by José Joaquín Atria.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.