// Copyright 2019, OpenTelemetry Authors // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.28.1 // protoc v3.21.12 // source: lib/protoparser/opentelemetry/proto/common.proto package pb // AnyValue is used to represent any type of attribute value. AnyValue may contain a // primitive value such as a string or integer or it may contain an arbitrary nested // object containing arrays, key-value lists and primitives. type AnyValue struct { unknownFields []byte // The value is one of the listed fields. It is valid for all values to be unspecified // in which case this AnyValue is considered to be "empty". // // Types that are assignable to Value: // // *AnyValue_StringValue // *AnyValue_BoolValue // *AnyValue_IntValue // *AnyValue_DoubleValue // *AnyValue_ArrayValue // *AnyValue_KvlistValue // *AnyValue_BytesValue Value isAnyValue_Value `protobuf_oneof:"value"` } type isAnyValue_Value interface { isAnyValue_Value() } type AnyValue_StringValue struct { StringValue string `protobuf:"bytes,1,opt,name=string_value,json=stringValue,proto3,oneof"` } type AnyValue_BoolValue struct { BoolValue bool `protobuf:"varint,2,opt,name=bool_value,json=boolValue,proto3,oneof"` } type AnyValue_IntValue struct { IntValue int64 `protobuf:"varint,3,opt,name=int_value,json=intValue,proto3,oneof"` } type AnyValue_DoubleValue struct { DoubleValue float64 `protobuf:"fixed64,4,opt,name=double_value,json=doubleValue,proto3,oneof"` } type AnyValue_ArrayValue struct { ArrayValue *ArrayValue `protobuf:"bytes,5,opt,name=array_value,json=arrayValue,proto3,oneof"` } type AnyValue_KvlistValue struct { KvlistValue *KeyValueList `protobuf:"bytes,6,opt,name=kvlist_value,json=kvlistValue,proto3,oneof"` } type AnyValue_BytesValue struct { BytesValue []byte `protobuf:"bytes,7,opt,name=bytes_value,json=bytesValue,proto3,oneof"` } func (*AnyValue_StringValue) isAnyValue_Value() {} func (*AnyValue_BoolValue) isAnyValue_Value() {} func (*AnyValue_IntValue) isAnyValue_Value() {} func (*AnyValue_DoubleValue) isAnyValue_Value() {} func (*AnyValue_ArrayValue) isAnyValue_Value() {} func (*AnyValue_KvlistValue) isAnyValue_Value() {} func (*AnyValue_BytesValue) isAnyValue_Value() {} // ArrayValue is a list of AnyValue messages. We need ArrayValue as a message // since oneof in AnyValue does not allow repeated fields. type ArrayValue struct { unknownFields []byte // Array of values. The array may be empty (contain 0 elements). Values []*AnyValue `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` } // KeyValueList is a list of KeyValue messages. We need KeyValueList as a message // since `oneof` in AnyValue does not allow repeated fields. Everywhere else where we need // a list of KeyValue messages (e.g. in Span) we use `repeated KeyValue` directly to // avoid unnecessary extra wrapping (which slows down the protocol). The 2 approaches // are semantically equivalent. type KeyValueList struct { unknownFields []byte // A collection of key/value pairs of key-value pairs. The list may be empty (may // contain 0 elements). // The keys MUST be unique (it is not allowed to have more than one // value with the same key). Values []*KeyValue `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` } // KeyValue is a key-value pair that is used to store Span attributes, Link // attributes, etc. type KeyValue struct { unknownFields []byte Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` Value *AnyValue `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` }