1
0
mirror of https://github.com/open-telemetry/opentelemetry-go.git synced 2024-12-28 21:09:17 +02:00
opentelemetry-go/semconv/v1.22.0/attribute_group.go
2024-02-29 07:05:28 +01:00

2480 lines
92 KiB
Go

// Copyright The OpenTelemetry Authors
// SPDX-License-Identifier: Apache-2.0
// Code generated from semantic convention specification. DO NOT EDIT.
package semconv // import "go.opentelemetry.io/otel/semconv/v1.22.0"
import "go.opentelemetry.io/otel/attribute"
// These attributes may be used to describe the client in a connection-based
// network interaction where there is one side that initiates the connection
// (the client is the side that initiates the connection). This covers all TCP
// network interactions since TCP is connection-based and one side initiates
// the connection (an exception is made for peer-to-peer communication over TCP
// where the "user-facing" surface of the protocol / API does not expose a
// clear notion of client and server). This also covers UDP network
// interactions where one side initiates the interaction, e.g. QUIC (HTTP/3)
// and DNS.
const (
// ClientAddressKey is the attribute Key conforming to the "client.address"
// semantic conventions. It represents the client address - domain name if
// available without reverse DNS lookup, otherwise IP address or Unix
// domain socket name.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'client.example.com', '10.1.2.80', '/tmp/my.sock'
// Note: When observed from the server side, and when communicating through
// an intermediary, `client.address` SHOULD represent the client address
// behind any intermediaries (e.g. proxies) if it's available.
ClientAddressKey = attribute.Key("client.address")
// ClientPortKey is the attribute Key conforming to the "client.port"
// semantic conventions. It represents the client port number.
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 65123
// Note: When observed from the server side, and when communicating through
// an intermediary, `client.port` SHOULD represent the client port behind
// any intermediaries (e.g. proxies) if it's available.
ClientPortKey = attribute.Key("client.port")
)
// ClientAddress returns an attribute KeyValue conforming to the
// "client.address" semantic conventions. It represents the client address -
// domain name if available without reverse DNS lookup, otherwise IP address or
// Unix domain socket name.
func ClientAddress(val string) attribute.KeyValue {
return ClientAddressKey.String(val)
}
// ClientPort returns an attribute KeyValue conforming to the "client.port"
// semantic conventions. It represents the client port number.
func ClientPort(val int) attribute.KeyValue {
return ClientPortKey.Int(val)
}
// These attributes may be used for any network related operation.
const (
// NetHostNameKey is the attribute Key conforming to the "net.host.name"
// semantic conventions.
//
// Type: string
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 'example.com'
// Deprecated: use `server.address`.
NetHostNameKey = attribute.Key("net.host.name")
// NetHostPortKey is the attribute Key conforming to the "net.host.port"
// semantic conventions.
//
// Type: int
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 8080
// Deprecated: use `server.port`.
NetHostPortKey = attribute.Key("net.host.port")
// NetPeerNameKey is the attribute Key conforming to the "net.peer.name"
// semantic conventions.
//
// Type: string
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 'example.com'
// Deprecated: use `server.address` on client spans and `client.address` on
// server spans.
NetPeerNameKey = attribute.Key("net.peer.name")
// NetPeerPortKey is the attribute Key conforming to the "net.peer.port"
// semantic conventions.
//
// Type: int
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 8080
// Deprecated: use `server.port` on client spans and `client.port` on
// server spans.
NetPeerPortKey = attribute.Key("net.peer.port")
// NetProtocolNameKey is the attribute Key conforming to the
// "net.protocol.name" semantic conventions.
//
// Type: string
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 'amqp', 'http', 'mqtt'
// Deprecated: use `network.protocol.name`.
NetProtocolNameKey = attribute.Key("net.protocol.name")
// NetProtocolVersionKey is the attribute Key conforming to the
// "net.protocol.version" semantic conventions.
//
// Type: string
// RequirementLevel: Optional
// Stability: deprecated
// Examples: '3.1.1'
// Deprecated: use `network.protocol.version`.
NetProtocolVersionKey = attribute.Key("net.protocol.version")
// NetSockFamilyKey is the attribute Key conforming to the
// "net.sock.family" semantic conventions.
//
// Type: Enum
// RequirementLevel: Optional
// Stability: deprecated
// Deprecated: use `network.transport` and `network.type`.
NetSockFamilyKey = attribute.Key("net.sock.family")
// NetSockHostAddrKey is the attribute Key conforming to the
// "net.sock.host.addr" semantic conventions.
//
// Type: string
// RequirementLevel: Optional
// Stability: deprecated
// Examples: '/var/my.sock'
// Deprecated: use `network.local.address`.
NetSockHostAddrKey = attribute.Key("net.sock.host.addr")
// NetSockHostPortKey is the attribute Key conforming to the
// "net.sock.host.port" semantic conventions.
//
// Type: int
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 8080
// Deprecated: use `network.local.port`.
NetSockHostPortKey = attribute.Key("net.sock.host.port")
// NetSockPeerAddrKey is the attribute Key conforming to the
// "net.sock.peer.addr" semantic conventions.
//
// Type: string
// RequirementLevel: Optional
// Stability: deprecated
// Examples: '192.168.0.1'
// Deprecated: use `network.peer.address`.
NetSockPeerAddrKey = attribute.Key("net.sock.peer.addr")
// NetSockPeerNameKey is the attribute Key conforming to the
// "net.sock.peer.name" semantic conventions.
//
// Type: string
// RequirementLevel: Optional
// Stability: deprecated
// Examples: '/var/my.sock'
// Deprecated: no replacement at this time.
NetSockPeerNameKey = attribute.Key("net.sock.peer.name")
// NetSockPeerPortKey is the attribute Key conforming to the
// "net.sock.peer.port" semantic conventions.
//
// Type: int
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 65531
// Deprecated: use `network.peer.port`.
NetSockPeerPortKey = attribute.Key("net.sock.peer.port")
// NetTransportKey is the attribute Key conforming to the "net.transport"
// semantic conventions.
//
// Type: Enum
// RequirementLevel: Optional
// Stability: deprecated
// Deprecated: use `network.transport`.
NetTransportKey = attribute.Key("net.transport")
)
var (
// IPv4 address
//
// Deprecated: use `network.transport` and `network.type`.
NetSockFamilyInet = NetSockFamilyKey.String("inet")
// IPv6 address
//
// Deprecated: use `network.transport` and `network.type`.
NetSockFamilyInet6 = NetSockFamilyKey.String("inet6")
// Unix domain socket path
//
// Deprecated: use `network.transport` and `network.type`.
NetSockFamilyUnix = NetSockFamilyKey.String("unix")
)
var (
// ip_tcp
//
// Deprecated: use `network.transport`.
NetTransportTCP = NetTransportKey.String("ip_tcp")
// ip_udp
//
// Deprecated: use `network.transport`.
NetTransportUDP = NetTransportKey.String("ip_udp")
// Named or anonymous pipe
//
// Deprecated: use `network.transport`.
NetTransportPipe = NetTransportKey.String("pipe")
// In-process communication
//
// Deprecated: use `network.transport`.
NetTransportInProc = NetTransportKey.String("inproc")
// Something else (non IP-based)
//
// Deprecated: use `network.transport`.
NetTransportOther = NetTransportKey.String("other")
)
// NetHostName returns an attribute KeyValue conforming to the
// "net.host.name" semantic conventions.
//
// Deprecated: use `server.address`.
func NetHostName(val string) attribute.KeyValue {
return NetHostNameKey.String(val)
}
// NetHostPort returns an attribute KeyValue conforming to the
// "net.host.port" semantic conventions.
//
// Deprecated: use `server.port`.
func NetHostPort(val int) attribute.KeyValue {
return NetHostPortKey.Int(val)
}
// NetPeerName returns an attribute KeyValue conforming to the
// "net.peer.name" semantic conventions.
//
// Deprecated: use `server.address` on client spans and `client.address` on
// server spans.
func NetPeerName(val string) attribute.KeyValue {
return NetPeerNameKey.String(val)
}
// NetPeerPort returns an attribute KeyValue conforming to the
// "net.peer.port" semantic conventions.
//
// Deprecated: use `server.port` on client spans and `client.port` on server
// spans.
func NetPeerPort(val int) attribute.KeyValue {
return NetPeerPortKey.Int(val)
}
// NetProtocolName returns an attribute KeyValue conforming to the
// "net.protocol.name" semantic conventions.
//
// Deprecated: use `network.protocol.name`.
func NetProtocolName(val string) attribute.KeyValue {
return NetProtocolNameKey.String(val)
}
// NetProtocolVersion returns an attribute KeyValue conforming to the
// "net.protocol.version" semantic conventions.
//
// Deprecated: use `network.protocol.version`.
func NetProtocolVersion(val string) attribute.KeyValue {
return NetProtocolVersionKey.String(val)
}
// NetSockHostAddr returns an attribute KeyValue conforming to the
// "net.sock.host.addr" semantic conventions.
//
// Deprecated: use `network.local.address`.
func NetSockHostAddr(val string) attribute.KeyValue {
return NetSockHostAddrKey.String(val)
}
// NetSockHostPort returns an attribute KeyValue conforming to the
// "net.sock.host.port" semantic conventions.
//
// Deprecated: use `network.local.port`.
func NetSockHostPort(val int) attribute.KeyValue {
return NetSockHostPortKey.Int(val)
}
// NetSockPeerAddr returns an attribute KeyValue conforming to the
// "net.sock.peer.addr" semantic conventions.
//
// Deprecated: use `network.peer.address`.
func NetSockPeerAddr(val string) attribute.KeyValue {
return NetSockPeerAddrKey.String(val)
}
// NetSockPeerName returns an attribute KeyValue conforming to the
// "net.sock.peer.name" semantic conventions.
//
// Deprecated: no replacement at this time.
func NetSockPeerName(val string) attribute.KeyValue {
return NetSockPeerNameKey.String(val)
}
// NetSockPeerPort returns an attribute KeyValue conforming to the
// "net.sock.peer.port" semantic conventions.
//
// Deprecated: use `network.peer.port`.
func NetSockPeerPort(val int) attribute.KeyValue {
return NetSockPeerPortKey.Int(val)
}
// These attributes may be used to describe the receiver of a network
// exchange/packet. These should be used when there is no client/server
// relationship between the two sides, or when that relationship is unknown.
// This covers low-level network interactions (e.g. packet tracing) where you
// don't know if there was a connection or which side initiated it. This also
// covers unidirectional UDP flows and peer-to-peer communication where the
// "user-facing" surface of the protocol / API does not expose a clear notion
// of client and server.
const (
// DestinationAddressKey is the attribute Key conforming to the
// "destination.address" semantic conventions. It represents the
// destination address - domain name if available without reverse DNS
// lookup, otherwise IP address or Unix domain socket name.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'destination.example.com', '10.1.2.80', '/tmp/my.sock'
// Note: When observed from the source side, and when communicating through
// an intermediary, `destination.address` SHOULD represent the destination
// address behind any intermediaries (e.g. proxies) if it's available.
DestinationAddressKey = attribute.Key("destination.address")
// DestinationPortKey is the attribute Key conforming to the
// "destination.port" semantic conventions. It represents the destination
// port number
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 3389, 2888
DestinationPortKey = attribute.Key("destination.port")
)
// DestinationAddress returns an attribute KeyValue conforming to the
// "destination.address" semantic conventions. It represents the destination
// address - domain name if available without reverse DNS lookup, otherwise IP
// address or Unix domain socket name.
func DestinationAddress(val string) attribute.KeyValue {
return DestinationAddressKey.String(val)
}
// DestinationPort returns an attribute KeyValue conforming to the
// "destination.port" semantic conventions. It represents the destination port
// number
func DestinationPort(val int) attribute.KeyValue {
return DestinationPortKey.Int(val)
}
// The shared attributes used to report an error.
const (
// ErrorTypeKey is the attribute Key conforming to the "error.type"
// semantic conventions. It represents the describes a class of error the
// operation ended with.
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'timeout', 'java.net.UnknownHostException',
// 'server_certificate_invalid', '500'
// Note: The `error.type` SHOULD be predictable and SHOULD have low
// cardinality.
// Instrumentations SHOULD document the list of errors they report.
//
// The cardinality of `error.type` within one instrumentation library
// SHOULD be low, but
// telemetry consumers that aggregate data from multiple instrumentation
// libraries and applications
// should be prepared for `error.type` to have high cardinality at query
// time, when no
// additional filters are applied.
//
// If the operation has completed successfully, instrumentations SHOULD NOT
// set `error.type`.
//
// If a specific domain defines its own set of error codes (such as HTTP or
// gRPC status codes),
// it's RECOMMENDED to use a domain-specific attribute and also set
// `error.type` to capture
// all errors, regardless of whether they are defined within the
// domain-specific set or not.
ErrorTypeKey = attribute.Key("error.type")
)
var (
// A fallback error value to be used when the instrumentation does not define a custom value for it
ErrorTypeOther = ErrorTypeKey.String("_OTHER")
)
// Describes FaaS attributes.
const (
// FaaSInvokedNameKey is the attribute Key conforming to the
// "faas.invoked_name" semantic conventions. It represents the name of the
// invoked function.
//
// Type: string
// RequirementLevel: Required
// Stability: experimental
// Examples: 'my-function'
// Note: SHOULD be equal to the `faas.name` resource attribute of the
// invoked function.
FaaSInvokedNameKey = attribute.Key("faas.invoked_name")
// FaaSInvokedProviderKey is the attribute Key conforming to the
// "faas.invoked_provider" semantic conventions. It represents the cloud
// provider of the invoked function.
//
// Type: Enum
// RequirementLevel: Required
// Stability: experimental
// Note: SHOULD be equal to the `cloud.provider` resource attribute of the
// invoked function.
FaaSInvokedProviderKey = attribute.Key("faas.invoked_provider")
// FaaSInvokedRegionKey is the attribute Key conforming to the
// "faas.invoked_region" semantic conventions. It represents the cloud
// region of the invoked function.
//
// Type: string
// RequirementLevel: ConditionallyRequired (For some cloud providers, like
// AWS or GCP, the region in which a function is hosted is essential to
// uniquely identify the function and also part of its endpoint. Since it's
// part of the endpoint being called, the region is always known to
// clients. In these cases, `faas.invoked_region` MUST be set accordingly.
// If the region is unknown to the client or not required for identifying
// the invoked function, setting `faas.invoked_region` is optional.)
// Stability: experimental
// Examples: 'eu-central-1'
// Note: SHOULD be equal to the `cloud.region` resource attribute of the
// invoked function.
FaaSInvokedRegionKey = attribute.Key("faas.invoked_region")
// FaaSTriggerKey is the attribute Key conforming to the "faas.trigger"
// semantic conventions. It represents the type of the trigger which caused
// this function invocation.
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
FaaSTriggerKey = attribute.Key("faas.trigger")
)
var (
// Alibaba Cloud
FaaSInvokedProviderAlibabaCloud = FaaSInvokedProviderKey.String("alibaba_cloud")
// Amazon Web Services
FaaSInvokedProviderAWS = FaaSInvokedProviderKey.String("aws")
// Microsoft Azure
FaaSInvokedProviderAzure = FaaSInvokedProviderKey.String("azure")
// Google Cloud Platform
FaaSInvokedProviderGCP = FaaSInvokedProviderKey.String("gcp")
// Tencent Cloud
FaaSInvokedProviderTencentCloud = FaaSInvokedProviderKey.String("tencent_cloud")
)
var (
// A response to some data source operation such as a database or filesystem read/write
FaaSTriggerDatasource = FaaSTriggerKey.String("datasource")
// To provide an answer to an inbound HTTP request
FaaSTriggerHTTP = FaaSTriggerKey.String("http")
// A function is set to be executed when messages are sent to a messaging system
FaaSTriggerPubsub = FaaSTriggerKey.String("pubsub")
// A function is scheduled to be executed regularly
FaaSTriggerTimer = FaaSTriggerKey.String("timer")
// If none of the others apply
FaaSTriggerOther = FaaSTriggerKey.String("other")
)
// FaaSInvokedName returns an attribute KeyValue conforming to the
// "faas.invoked_name" semantic conventions. It represents the name of the
// invoked function.
func FaaSInvokedName(val string) attribute.KeyValue {
return FaaSInvokedNameKey.String(val)
}
// FaaSInvokedRegion returns an attribute KeyValue conforming to the
// "faas.invoked_region" semantic conventions. It represents the cloud region
// of the invoked function.
func FaaSInvokedRegion(val string) attribute.KeyValue {
return FaaSInvokedRegionKey.String(val)
}
// Attributes for Events represented using Log Records.
const (
// EventDomainKey is the attribute Key conforming to the "event.domain"
// semantic conventions. It represents the domain identifies the business
// context for the events.
//
// Type: Enum
// RequirementLevel: Required
// Stability: experimental
// Note: Events across different domains may have same `event.name`, yet be
// unrelated events.
EventDomainKey = attribute.Key("event.domain")
// EventNameKey is the attribute Key conforming to the "event.name"
// semantic conventions. It represents the name identifies the event.
//
// Type: string
// RequirementLevel: Required
// Stability: experimental
// Examples: 'click', 'exception'
EventNameKey = attribute.Key("event.name")
)
var (
// Events from browser apps
EventDomainBrowser = EventDomainKey.String("browser")
// Events from mobile apps
EventDomainDevice = EventDomainKey.String("device")
// Events from Kubernetes
EventDomainK8S = EventDomainKey.String("k8s")
)
// EventName returns an attribute KeyValue conforming to the "event.name"
// semantic conventions. It represents the name identifies the event.
func EventName(val string) attribute.KeyValue {
return EventNameKey.String(val)
}
// The attributes described in this section are rather generic. They may be
// used in any Log Record they apply to.
const (
// LogRecordUIDKey is the attribute Key conforming to the "log.record.uid"
// semantic conventions. It represents a unique identifier for the Log
// Record.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '01ARZ3NDEKTSV4RRFFQ69G5FAV'
// Note: If an id is provided, other log records with the same id will be
// considered duplicates and can be removed safely. This means, that two
// distinguishable log records MUST have different values.
// The id MAY be an [Universally Unique Lexicographically Sortable
// Identifier (ULID)](https://github.com/ulid/spec), but other identifiers
// (e.g. UUID) may be used as needed.
LogRecordUIDKey = attribute.Key("log.record.uid")
)
// LogRecordUID returns an attribute KeyValue conforming to the
// "log.record.uid" semantic conventions. It represents a unique identifier for
// the Log Record.
func LogRecordUID(val string) attribute.KeyValue {
return LogRecordUIDKey.String(val)
}
// Describes Log attributes
const (
// LogIostreamKey is the attribute Key conforming to the "log.iostream"
// semantic conventions. It represents the stream associated with the log.
// See below for a list of well-known values.
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
LogIostreamKey = attribute.Key("log.iostream")
)
var (
// Logs from stdout stream
LogIostreamStdout = LogIostreamKey.String("stdout")
// Events from stderr stream
LogIostreamStderr = LogIostreamKey.String("stderr")
)
// A file to which log was emitted.
const (
// LogFileNameKey is the attribute Key conforming to the "log.file.name"
// semantic conventions. It represents the basename of the file.
//
// Type: string
// RequirementLevel: Recommended
// Stability: experimental
// Examples: 'audit.log'
LogFileNameKey = attribute.Key("log.file.name")
// LogFileNameResolvedKey is the attribute Key conforming to the
// "log.file.name_resolved" semantic conventions. It represents the
// basename of the file, with symlinks resolved.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'uuid.log'
LogFileNameResolvedKey = attribute.Key("log.file.name_resolved")
// LogFilePathKey is the attribute Key conforming to the "log.file.path"
// semantic conventions. It represents the full path to the file.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '/var/log/mysql/audit.log'
LogFilePathKey = attribute.Key("log.file.path")
// LogFilePathResolvedKey is the attribute Key conforming to the
// "log.file.path_resolved" semantic conventions. It represents the full
// path to the file, with symlinks resolved.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '/var/lib/docker/uuid.log'
LogFilePathResolvedKey = attribute.Key("log.file.path_resolved")
)
// LogFileName returns an attribute KeyValue conforming to the
// "log.file.name" semantic conventions. It represents the basename of the
// file.
func LogFileName(val string) attribute.KeyValue {
return LogFileNameKey.String(val)
}
// LogFileNameResolved returns an attribute KeyValue conforming to the
// "log.file.name_resolved" semantic conventions. It represents the basename of
// the file, with symlinks resolved.
func LogFileNameResolved(val string) attribute.KeyValue {
return LogFileNameResolvedKey.String(val)
}
// LogFilePath returns an attribute KeyValue conforming to the
// "log.file.path" semantic conventions. It represents the full path to the
// file.
func LogFilePath(val string) attribute.KeyValue {
return LogFilePathKey.String(val)
}
// LogFilePathResolved returns an attribute KeyValue conforming to the
// "log.file.path_resolved" semantic conventions. It represents the full path
// to the file, with symlinks resolved.
func LogFilePathResolved(val string) attribute.KeyValue {
return LogFilePathResolvedKey.String(val)
}
// Describes Database attributes
const (
// PoolNameKey is the attribute Key conforming to the "pool.name" semantic
// conventions. It represents the name of the connection pool; unique
// within the instrumented application. In case the connection pool
// implementation does not provide a name, then the
// [db.connection_string](/docs/database/database-spans.md#connection-level-attributes)
// should be used
//
// Type: string
// RequirementLevel: Required
// Stability: experimental
// Examples: 'myDataSource'
PoolNameKey = attribute.Key("pool.name")
// StateKey is the attribute Key conforming to the "state" semantic
// conventions. It represents the state of a connection in the pool
//
// Type: Enum
// RequirementLevel: Required
// Stability: experimental
// Examples: 'idle'
StateKey = attribute.Key("state")
)
var (
// idle
StateIdle = StateKey.String("idle")
// used
StateUsed = StateKey.String("used")
)
// PoolName returns an attribute KeyValue conforming to the "pool.name"
// semantic conventions. It represents the name of the connection pool; unique
// within the instrumented application. In case the connection pool
// implementation does not provide a name, then the
// [db.connection_string](/docs/database/database-spans.md#connection-level-attributes)
// should be used
func PoolName(val string) attribute.KeyValue {
return PoolNameKey.String(val)
}
// Describes JVM buffer metric attributes.
const (
// JvmBufferPoolNameKey is the attribute Key conforming to the
// "jvm.buffer.pool.name" semantic conventions. It represents the name of
// the buffer pool.
//
// Type: string
// RequirementLevel: Recommended
// Stability: experimental
// Examples: 'mapped', 'direct'
// Note: Pool names are generally obtained via
// [BufferPoolMXBean#getName()](https://docs.oracle.com/en/java/javase/11/docs/api/java.management/java/lang/management/BufferPoolMXBean.html#getName()).
JvmBufferPoolNameKey = attribute.Key("jvm.buffer.pool.name")
)
// JvmBufferPoolName returns an attribute KeyValue conforming to the
// "jvm.buffer.pool.name" semantic conventions. It represents the name of the
// buffer pool.
func JvmBufferPoolName(val string) attribute.KeyValue {
return JvmBufferPoolNameKey.String(val)
}
// Describes JVM memory metric attributes.
const (
// JvmMemoryPoolNameKey is the attribute Key conforming to the
// "jvm.memory.pool.name" semantic conventions. It represents the name of
// the memory pool.
//
// Type: string
// RequirementLevel: Recommended
// Stability: experimental
// Examples: 'G1 Old Gen', 'G1 Eden space', 'G1 Survivor Space'
// Note: Pool names are generally obtained via
// [MemoryPoolMXBean#getName()](https://docs.oracle.com/en/java/javase/11/docs/api/java.management/java/lang/management/MemoryPoolMXBean.html#getName()).
JvmMemoryPoolNameKey = attribute.Key("jvm.memory.pool.name")
// JvmMemoryTypeKey is the attribute Key conforming to the
// "jvm.memory.type" semantic conventions. It represents the type of
// memory.
//
// Type: Enum
// RequirementLevel: Recommended
// Stability: experimental
// Examples: 'heap', 'non_heap'
JvmMemoryTypeKey = attribute.Key("jvm.memory.type")
)
var (
// Heap memory
JvmMemoryTypeHeap = JvmMemoryTypeKey.String("heap")
// Non-heap memory
JvmMemoryTypeNonHeap = JvmMemoryTypeKey.String("non_heap")
)
// JvmMemoryPoolName returns an attribute KeyValue conforming to the
// "jvm.memory.pool.name" semantic conventions. It represents the name of the
// memory pool.
func JvmMemoryPoolName(val string) attribute.KeyValue {
return JvmMemoryPoolNameKey.String(val)
}
// Describes System metric attributes
const (
// SystemDeviceKey is the attribute Key conforming to the "system.device"
// semantic conventions. It represents the device identifier
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '(identifier)'
SystemDeviceKey = attribute.Key("system.device")
)
// SystemDevice returns an attribute KeyValue conforming to the
// "system.device" semantic conventions. It represents the device identifier
func SystemDevice(val string) attribute.KeyValue {
return SystemDeviceKey.String(val)
}
// Describes System CPU metric attributes
const (
// SystemCPULogicalNumberKey is the attribute Key conforming to the
// "system.cpu.logical_number" semantic conventions. It represents the
// logical CPU number [0..n-1]
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 1
SystemCPULogicalNumberKey = attribute.Key("system.cpu.logical_number")
// SystemCPUStateKey is the attribute Key conforming to the
// "system.cpu.state" semantic conventions. It represents the state of the
// CPU
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'idle', 'interrupt'
SystemCPUStateKey = attribute.Key("system.cpu.state")
)
var (
// user
SystemCPUStateUser = SystemCPUStateKey.String("user")
// system
SystemCPUStateSystem = SystemCPUStateKey.String("system")
// nice
SystemCPUStateNice = SystemCPUStateKey.String("nice")
// idle
SystemCPUStateIdle = SystemCPUStateKey.String("idle")
// iowait
SystemCPUStateIowait = SystemCPUStateKey.String("iowait")
// interrupt
SystemCPUStateInterrupt = SystemCPUStateKey.String("interrupt")
// steal
SystemCPUStateSteal = SystemCPUStateKey.String("steal")
)
// SystemCPULogicalNumber returns an attribute KeyValue conforming to the
// "system.cpu.logical_number" semantic conventions. It represents the logical
// CPU number [0..n-1]
func SystemCPULogicalNumber(val int) attribute.KeyValue {
return SystemCPULogicalNumberKey.Int(val)
}
// Describes System Memory metric attributes
const (
// SystemMemoryStateKey is the attribute Key conforming to the
// "system.memory.state" semantic conventions. It represents the memory
// state
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'free', 'cached'
SystemMemoryStateKey = attribute.Key("system.memory.state")
)
var (
// total
SystemMemoryStateTotal = SystemMemoryStateKey.String("total")
// used
SystemMemoryStateUsed = SystemMemoryStateKey.String("used")
// free
SystemMemoryStateFree = SystemMemoryStateKey.String("free")
// shared
SystemMemoryStateShared = SystemMemoryStateKey.String("shared")
// buffers
SystemMemoryStateBuffers = SystemMemoryStateKey.String("buffers")
// cached
SystemMemoryStateCached = SystemMemoryStateKey.String("cached")
)
// Describes System Memory Paging metric attributes
const (
// SystemPagingDirectionKey is the attribute Key conforming to the
// "system.paging.direction" semantic conventions. It represents the paging
// access direction
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'in'
SystemPagingDirectionKey = attribute.Key("system.paging.direction")
// SystemPagingStateKey is the attribute Key conforming to the
// "system.paging.state" semantic conventions. It represents the memory
// paging state
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'free'
SystemPagingStateKey = attribute.Key("system.paging.state")
// SystemPagingTypeKey is the attribute Key conforming to the
// "system.paging.type" semantic conventions. It represents the memory
// paging type
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'minor'
SystemPagingTypeKey = attribute.Key("system.paging.type")
)
var (
// in
SystemPagingDirectionIn = SystemPagingDirectionKey.String("in")
// out
SystemPagingDirectionOut = SystemPagingDirectionKey.String("out")
)
var (
// used
SystemPagingStateUsed = SystemPagingStateKey.String("used")
// free
SystemPagingStateFree = SystemPagingStateKey.String("free")
)
var (
// major
SystemPagingTypeMajor = SystemPagingTypeKey.String("major")
// minor
SystemPagingTypeMinor = SystemPagingTypeKey.String("minor")
)
// Describes System Disk metric attributes
const (
// SystemDiskDirectionKey is the attribute Key conforming to the
// "system.disk.direction" semantic conventions. It represents the disk
// operation direction
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'read'
SystemDiskDirectionKey = attribute.Key("system.disk.direction")
)
var (
// read
SystemDiskDirectionRead = SystemDiskDirectionKey.String("read")
// write
SystemDiskDirectionWrite = SystemDiskDirectionKey.String("write")
)
// Describes Filesystem metric attributes
const (
// SystemFilesystemModeKey is the attribute Key conforming to the
// "system.filesystem.mode" semantic conventions. It represents the
// filesystem mode
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'rw, ro'
SystemFilesystemModeKey = attribute.Key("system.filesystem.mode")
// SystemFilesystemMountpointKey is the attribute Key conforming to the
// "system.filesystem.mountpoint" semantic conventions. It represents the
// filesystem mount path
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '/mnt/data'
SystemFilesystemMountpointKey = attribute.Key("system.filesystem.mountpoint")
// SystemFilesystemStateKey is the attribute Key conforming to the
// "system.filesystem.state" semantic conventions. It represents the
// filesystem state
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'used'
SystemFilesystemStateKey = attribute.Key("system.filesystem.state")
// SystemFilesystemTypeKey is the attribute Key conforming to the
// "system.filesystem.type" semantic conventions. It represents the
// filesystem type
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'ext4'
SystemFilesystemTypeKey = attribute.Key("system.filesystem.type")
)
var (
// used
SystemFilesystemStateUsed = SystemFilesystemStateKey.String("used")
// free
SystemFilesystemStateFree = SystemFilesystemStateKey.String("free")
// reserved
SystemFilesystemStateReserved = SystemFilesystemStateKey.String("reserved")
)
var (
// fat32
SystemFilesystemTypeFat32 = SystemFilesystemTypeKey.String("fat32")
// exfat
SystemFilesystemTypeExfat = SystemFilesystemTypeKey.String("exfat")
// ntfs
SystemFilesystemTypeNtfs = SystemFilesystemTypeKey.String("ntfs")
// refs
SystemFilesystemTypeRefs = SystemFilesystemTypeKey.String("refs")
// hfsplus
SystemFilesystemTypeHfsplus = SystemFilesystemTypeKey.String("hfsplus")
// ext4
SystemFilesystemTypeExt4 = SystemFilesystemTypeKey.String("ext4")
)
// SystemFilesystemMode returns an attribute KeyValue conforming to the
// "system.filesystem.mode" semantic conventions. It represents the filesystem
// mode
func SystemFilesystemMode(val string) attribute.KeyValue {
return SystemFilesystemModeKey.String(val)
}
// SystemFilesystemMountpoint returns an attribute KeyValue conforming to
// the "system.filesystem.mountpoint" semantic conventions. It represents the
// filesystem mount path
func SystemFilesystemMountpoint(val string) attribute.KeyValue {
return SystemFilesystemMountpointKey.String(val)
}
// Describes Network metric attributes
const (
// SystemNetworkDirectionKey is the attribute Key conforming to the
// "system.network.direction" semantic conventions. It represents the
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'transmit'
SystemNetworkDirectionKey = attribute.Key("system.network.direction")
// SystemNetworkStateKey is the attribute Key conforming to the
// "system.network.state" semantic conventions. It represents a stateless
// protocol MUST NOT set this attribute
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'close_wait'
SystemNetworkStateKey = attribute.Key("system.network.state")
)
var (
// transmit
SystemNetworkDirectionTransmit = SystemNetworkDirectionKey.String("transmit")
// receive
SystemNetworkDirectionReceive = SystemNetworkDirectionKey.String("receive")
)
var (
// close
SystemNetworkStateClose = SystemNetworkStateKey.String("close")
// close_wait
SystemNetworkStateCloseWait = SystemNetworkStateKey.String("close_wait")
// closing
SystemNetworkStateClosing = SystemNetworkStateKey.String("closing")
// delete
SystemNetworkStateDelete = SystemNetworkStateKey.String("delete")
// established
SystemNetworkStateEstablished = SystemNetworkStateKey.String("established")
// fin_wait_1
SystemNetworkStateFinWait1 = SystemNetworkStateKey.String("fin_wait_1")
// fin_wait_2
SystemNetworkStateFinWait2 = SystemNetworkStateKey.String("fin_wait_2")
// last_ack
SystemNetworkStateLastAck = SystemNetworkStateKey.String("last_ack")
// listen
SystemNetworkStateListen = SystemNetworkStateKey.String("listen")
// syn_recv
SystemNetworkStateSynRecv = SystemNetworkStateKey.String("syn_recv")
// syn_sent
SystemNetworkStateSynSent = SystemNetworkStateKey.String("syn_sent")
// time_wait
SystemNetworkStateTimeWait = SystemNetworkStateKey.String("time_wait")
)
// Describes System Process metric attributes
const (
// SystemProcessesStatusKey is the attribute Key conforming to the
// "system.processes.status" semantic conventions. It represents the
// process state, e.g., [Linux Process State
// Codes](https://man7.org/linux/man-pages/man1/ps.1.html#PROCESS_STATE_CODES)
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'running'
SystemProcessesStatusKey = attribute.Key("system.processes.status")
)
var (
// running
SystemProcessesStatusRunning = SystemProcessesStatusKey.String("running")
// sleeping
SystemProcessesStatusSleeping = SystemProcessesStatusKey.String("sleeping")
// stopped
SystemProcessesStatusStopped = SystemProcessesStatusKey.String("stopped")
// defunct
SystemProcessesStatusDefunct = SystemProcessesStatusKey.String("defunct")
)
// These attributes may be used for any network related operation.
const (
// NetworkLocalAddressKey is the attribute Key conforming to the
// "network.local.address" semantic conventions. It represents the local
// address of the network connection - IP address or Unix domain socket
// name.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '10.1.2.80', '/tmp/my.sock'
NetworkLocalAddressKey = attribute.Key("network.local.address")
// NetworkLocalPortKey is the attribute Key conforming to the
// "network.local.port" semantic conventions. It represents the local port
// number of the network connection.
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 65123
NetworkLocalPortKey = attribute.Key("network.local.port")
// NetworkPeerAddressKey is the attribute Key conforming to the
// "network.peer.address" semantic conventions. It represents the peer
// address of the network connection - IP address or Unix domain socket
// name.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '10.1.2.80', '/tmp/my.sock'
NetworkPeerAddressKey = attribute.Key("network.peer.address")
// NetworkPeerPortKey is the attribute Key conforming to the
// "network.peer.port" semantic conventions. It represents the peer port
// number of the network connection.
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 65123
NetworkPeerPortKey = attribute.Key("network.peer.port")
// NetworkProtocolNameKey is the attribute Key conforming to the
// "network.protocol.name" semantic conventions. It represents the [OSI
// application layer](https://osi-model.com/application-layer/) or non-OSI
// equivalent.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'amqp', 'http', 'mqtt'
// Note: The value SHOULD be normalized to lowercase.
NetworkProtocolNameKey = attribute.Key("network.protocol.name")
// NetworkProtocolVersionKey is the attribute Key conforming to the
// "network.protocol.version" semantic conventions. It represents the
// version of the protocol specified in `network.protocol.name`.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '3.1.1'
// Note: `network.protocol.version` refers to the version of the protocol
// used and might be different from the protocol client's version. If the
// HTTP client used has a version of `0.27.2`, but sends HTTP version
// `1.1`, this attribute should be set to `1.1`.
NetworkProtocolVersionKey = attribute.Key("network.protocol.version")
// NetworkTransportKey is the attribute Key conforming to the
// "network.transport" semantic conventions. It represents the [OSI
// transport layer](https://osi-model.com/transport-layer/) or
// [inter-process communication
// method](https://en.wikipedia.org/wiki/Inter-process_communication).
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'tcp', 'udp'
// Note: The value SHOULD be normalized to lowercase.
//
// Consider always setting the transport when setting a port number, since
// a port number is ambiguous without knowing the transport, for example
// different processes could be listening on TCP port 12345 and UDP port
// 12345.
NetworkTransportKey = attribute.Key("network.transport")
// NetworkTypeKey is the attribute Key conforming to the "network.type"
// semantic conventions. It represents the [OSI network
// layer](https://osi-model.com/network-layer/) or non-OSI equivalent.
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'ipv4', 'ipv6'
// Note: The value SHOULD be normalized to lowercase.
NetworkTypeKey = attribute.Key("network.type")
)
var (
// TCP
NetworkTransportTCP = NetworkTransportKey.String("tcp")
// UDP
NetworkTransportUDP = NetworkTransportKey.String("udp")
// Named or anonymous pipe. See note below
NetworkTransportPipe = NetworkTransportKey.String("pipe")
// Unix domain socket
NetworkTransportUnix = NetworkTransportKey.String("unix")
)
var (
// IPv4
NetworkTypeIpv4 = NetworkTypeKey.String("ipv4")
// IPv6
NetworkTypeIpv6 = NetworkTypeKey.String("ipv6")
)
// NetworkLocalAddress returns an attribute KeyValue conforming to the
// "network.local.address" semantic conventions. It represents the local
// address of the network connection - IP address or Unix domain socket name.
func NetworkLocalAddress(val string) attribute.KeyValue {
return NetworkLocalAddressKey.String(val)
}
// NetworkLocalPort returns an attribute KeyValue conforming to the
// "network.local.port" semantic conventions. It represents the local port
// number of the network connection.
func NetworkLocalPort(val int) attribute.KeyValue {
return NetworkLocalPortKey.Int(val)
}
// NetworkPeerAddress returns an attribute KeyValue conforming to the
// "network.peer.address" semantic conventions. It represents the peer address
// of the network connection - IP address or Unix domain socket name.
func NetworkPeerAddress(val string) attribute.KeyValue {
return NetworkPeerAddressKey.String(val)
}
// NetworkPeerPort returns an attribute KeyValue conforming to the
// "network.peer.port" semantic conventions. It represents the peer port number
// of the network connection.
func NetworkPeerPort(val int) attribute.KeyValue {
return NetworkPeerPortKey.Int(val)
}
// NetworkProtocolName returns an attribute KeyValue conforming to the
// "network.protocol.name" semantic conventions. It represents the [OSI
// application layer](https://osi-model.com/application-layer/) or non-OSI
// equivalent.
func NetworkProtocolName(val string) attribute.KeyValue {
return NetworkProtocolNameKey.String(val)
}
// NetworkProtocolVersion returns an attribute KeyValue conforming to the
// "network.protocol.version" semantic conventions. It represents the version
// of the protocol specified in `network.protocol.name`.
func NetworkProtocolVersion(val string) attribute.KeyValue {
return NetworkProtocolVersionKey.String(val)
}
// These attributes may be used for any network related operation.
const (
// NetworkCarrierIccKey is the attribute Key conforming to the
// "network.carrier.icc" semantic conventions. It represents the ISO 3166-1
// alpha-2 2-character country code associated with the mobile carrier
// network.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'DE'
NetworkCarrierIccKey = attribute.Key("network.carrier.icc")
// NetworkCarrierMccKey is the attribute Key conforming to the
// "network.carrier.mcc" semantic conventions. It represents the mobile
// carrier country code.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '310'
NetworkCarrierMccKey = attribute.Key("network.carrier.mcc")
// NetworkCarrierMncKey is the attribute Key conforming to the
// "network.carrier.mnc" semantic conventions. It represents the mobile
// carrier network code.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '001'
NetworkCarrierMncKey = attribute.Key("network.carrier.mnc")
// NetworkCarrierNameKey is the attribute Key conforming to the
// "network.carrier.name" semantic conventions. It represents the name of
// the mobile carrier.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'sprint'
NetworkCarrierNameKey = attribute.Key("network.carrier.name")
// NetworkConnectionSubtypeKey is the attribute Key conforming to the
// "network.connection.subtype" semantic conventions. It represents the
// this describes more details regarding the connection.type. It may be the
// type of cell technology connection, but it could be used for describing
// details about a wifi connection.
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'LTE'
NetworkConnectionSubtypeKey = attribute.Key("network.connection.subtype")
// NetworkConnectionTypeKey is the attribute Key conforming to the
// "network.connection.type" semantic conventions. It represents the
// internet connection type.
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'wifi'
NetworkConnectionTypeKey = attribute.Key("network.connection.type")
)
var (
// GPRS
NetworkConnectionSubtypeGprs = NetworkConnectionSubtypeKey.String("gprs")
// EDGE
NetworkConnectionSubtypeEdge = NetworkConnectionSubtypeKey.String("edge")
// UMTS
NetworkConnectionSubtypeUmts = NetworkConnectionSubtypeKey.String("umts")
// CDMA
NetworkConnectionSubtypeCdma = NetworkConnectionSubtypeKey.String("cdma")
// EVDO Rel. 0
NetworkConnectionSubtypeEvdo0 = NetworkConnectionSubtypeKey.String("evdo_0")
// EVDO Rev. A
NetworkConnectionSubtypeEvdoA = NetworkConnectionSubtypeKey.String("evdo_a")
// CDMA2000 1XRTT
NetworkConnectionSubtypeCdma20001xrtt = NetworkConnectionSubtypeKey.String("cdma2000_1xrtt")
// HSDPA
NetworkConnectionSubtypeHsdpa = NetworkConnectionSubtypeKey.String("hsdpa")
// HSUPA
NetworkConnectionSubtypeHsupa = NetworkConnectionSubtypeKey.String("hsupa")
// HSPA
NetworkConnectionSubtypeHspa = NetworkConnectionSubtypeKey.String("hspa")
// IDEN
NetworkConnectionSubtypeIden = NetworkConnectionSubtypeKey.String("iden")
// EVDO Rev. B
NetworkConnectionSubtypeEvdoB = NetworkConnectionSubtypeKey.String("evdo_b")
// LTE
NetworkConnectionSubtypeLte = NetworkConnectionSubtypeKey.String("lte")
// EHRPD
NetworkConnectionSubtypeEhrpd = NetworkConnectionSubtypeKey.String("ehrpd")
// HSPAP
NetworkConnectionSubtypeHspap = NetworkConnectionSubtypeKey.String("hspap")
// GSM
NetworkConnectionSubtypeGsm = NetworkConnectionSubtypeKey.String("gsm")
// TD-SCDMA
NetworkConnectionSubtypeTdScdma = NetworkConnectionSubtypeKey.String("td_scdma")
// IWLAN
NetworkConnectionSubtypeIwlan = NetworkConnectionSubtypeKey.String("iwlan")
// 5G NR (New Radio)
NetworkConnectionSubtypeNr = NetworkConnectionSubtypeKey.String("nr")
// 5G NRNSA (New Radio Non-Standalone)
NetworkConnectionSubtypeNrnsa = NetworkConnectionSubtypeKey.String("nrnsa")
// LTE CA
NetworkConnectionSubtypeLteCa = NetworkConnectionSubtypeKey.String("lte_ca")
)
var (
// wifi
NetworkConnectionTypeWifi = NetworkConnectionTypeKey.String("wifi")
// wired
NetworkConnectionTypeWired = NetworkConnectionTypeKey.String("wired")
// cell
NetworkConnectionTypeCell = NetworkConnectionTypeKey.String("cell")
// unavailable
NetworkConnectionTypeUnavailable = NetworkConnectionTypeKey.String("unavailable")
// unknown
NetworkConnectionTypeUnknown = NetworkConnectionTypeKey.String("unknown")
)
// NetworkCarrierIcc returns an attribute KeyValue conforming to the
// "network.carrier.icc" semantic conventions. It represents the ISO 3166-1
// alpha-2 2-character country code associated with the mobile carrier network.
func NetworkCarrierIcc(val string) attribute.KeyValue {
return NetworkCarrierIccKey.String(val)
}
// NetworkCarrierMcc returns an attribute KeyValue conforming to the
// "network.carrier.mcc" semantic conventions. It represents the mobile carrier
// country code.
func NetworkCarrierMcc(val string) attribute.KeyValue {
return NetworkCarrierMccKey.String(val)
}
// NetworkCarrierMnc returns an attribute KeyValue conforming to the
// "network.carrier.mnc" semantic conventions. It represents the mobile carrier
// network code.
func NetworkCarrierMnc(val string) attribute.KeyValue {
return NetworkCarrierMncKey.String(val)
}
// NetworkCarrierName returns an attribute KeyValue conforming to the
// "network.carrier.name" semantic conventions. It represents the name of the
// mobile carrier.
func NetworkCarrierName(val string) attribute.KeyValue {
return NetworkCarrierNameKey.String(val)
}
// Describes deprecated HTTP attributes.
const (
// HTTPMethodKey is the attribute Key conforming to the "http.method"
// semantic conventions.
//
// Type: string
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 'GET', 'POST', 'HEAD'
// Deprecated: use `http.request.method` instead.
HTTPMethodKey = attribute.Key("http.method")
// HTTPRequestContentLengthKey is the attribute Key conforming to the
// "http.request_content_length" semantic conventions.
//
// Type: int
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 3495
// Deprecated: use `http.request.body.size` instead.
HTTPRequestContentLengthKey = attribute.Key("http.request_content_length")
// HTTPResponseContentLengthKey is the attribute Key conforming to the
// "http.response_content_length" semantic conventions.
//
// Type: int
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 3495
// Deprecated: use `http.response.body.size` instead.
HTTPResponseContentLengthKey = attribute.Key("http.response_content_length")
// HTTPSchemeKey is the attribute Key conforming to the "http.scheme"
// semantic conventions.
//
// Type: string
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 'http', 'https'
// Deprecated: use `url.scheme` instead.
HTTPSchemeKey = attribute.Key("http.scheme")
// HTTPStatusCodeKey is the attribute Key conforming to the
// "http.status_code" semantic conventions.
//
// Type: int
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 200
// Deprecated: use `http.response.status_code` instead.
HTTPStatusCodeKey = attribute.Key("http.status_code")
// HTTPTargetKey is the attribute Key conforming to the "http.target"
// semantic conventions.
//
// Type: string
// RequirementLevel: Optional
// Stability: deprecated
// Examples: '/search?q=OpenTelemetry#SemConv'
// Deprecated: use `url.path` and `url.query` instead.
HTTPTargetKey = attribute.Key("http.target")
// HTTPURLKey is the attribute Key conforming to the "http.url" semantic
// conventions.
//
// Type: string
// RequirementLevel: Optional
// Stability: deprecated
// Examples: 'https://www.foo.bar/search?q=OpenTelemetry#SemConv'
// Deprecated: use `url.full` instead.
HTTPURLKey = attribute.Key("http.url")
)
// HTTPMethod returns an attribute KeyValue conforming to the "http.method"
// semantic conventions.
//
// Deprecated: use `http.request.method` instead.
func HTTPMethod(val string) attribute.KeyValue {
return HTTPMethodKey.String(val)
}
// HTTPRequestContentLength returns an attribute KeyValue conforming to the
// "http.request_content_length" semantic conventions.
//
// Deprecated: use `http.request.body.size` instead.
func HTTPRequestContentLength(val int) attribute.KeyValue {
return HTTPRequestContentLengthKey.Int(val)
}
// HTTPResponseContentLength returns an attribute KeyValue conforming to the
// "http.response_content_length" semantic conventions.
//
// Deprecated: use `http.response.body.size` instead.
func HTTPResponseContentLength(val int) attribute.KeyValue {
return HTTPResponseContentLengthKey.Int(val)
}
// HTTPScheme returns an attribute KeyValue conforming to the "http.scheme"
// semantic conventions.
//
// Deprecated: use `url.scheme` instead.
func HTTPScheme(val string) attribute.KeyValue {
return HTTPSchemeKey.String(val)
}
// HTTPStatusCode returns an attribute KeyValue conforming to the
// "http.status_code" semantic conventions.
//
// Deprecated: use `http.response.status_code` instead.
func HTTPStatusCode(val int) attribute.KeyValue {
return HTTPStatusCodeKey.Int(val)
}
// HTTPTarget returns an attribute KeyValue conforming to the "http.target"
// semantic conventions.
//
// Deprecated: use `url.path` and `url.query` instead.
func HTTPTarget(val string) attribute.KeyValue {
return HTTPTargetKey.String(val)
}
// HTTPURL returns an attribute KeyValue conforming to the "http.url"
// semantic conventions.
//
// Deprecated: use `url.full` instead.
func HTTPURL(val string) attribute.KeyValue {
return HTTPURLKey.String(val)
}
// Semantic convention attributes in the HTTP namespace.
const (
// HTTPRequestBodySizeKey is the attribute Key conforming to the
// "http.request.body.size" semantic conventions. It represents the size of
// the request payload body in bytes. This is the number of bytes
// transferred excluding headers and is often, but not always, present as
// the
// [Content-Length](https://www.rfc-editor.org/rfc/rfc9110.html#field.content-length)
// header. For requests using transport encoding, this should be the
// compressed size.
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 3495
HTTPRequestBodySizeKey = attribute.Key("http.request.body.size")
// HTTPRequestMethodKey is the attribute Key conforming to the
// "http.request.method" semantic conventions. It represents the hTTP
// request method.
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'GET', 'POST', 'HEAD'
// Note: HTTP request method value SHOULD be "known" to the
// instrumentation.
// By default, this convention defines "known" methods as the ones listed
// in [RFC9110](https://www.rfc-editor.org/rfc/rfc9110.html#name-methods)
// and the PATCH method defined in
// [RFC5789](https://www.rfc-editor.org/rfc/rfc5789.html).
//
// If the HTTP request method is not known to instrumentation, it MUST set
// the `http.request.method` attribute to `_OTHER`.
//
// If the HTTP instrumentation could end up converting valid HTTP request
// methods to `_OTHER`, then it MUST provide a way to override
// the list of known HTTP methods. If this override is done via environment
// variable, then the environment variable MUST be named
// OTEL_INSTRUMENTATION_HTTP_KNOWN_METHODS and support a comma-separated
// list of case-sensitive known HTTP methods
// (this list MUST be a full override of the default known method, it is
// not a list of known methods in addition to the defaults).
//
// HTTP method names are case-sensitive and `http.request.method` attribute
// value MUST match a known HTTP method name exactly.
// Instrumentations for specific web frameworks that consider HTTP methods
// to be case insensitive, SHOULD populate a canonical equivalent.
// Tracing instrumentations that do so, MUST also set
// `http.request.method_original` to the original value.
HTTPRequestMethodKey = attribute.Key("http.request.method")
// HTTPRequestMethodOriginalKey is the attribute Key conforming to the
// "http.request.method_original" semantic conventions. It represents the
// original HTTP method sent by the client in the request line.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'GeT', 'ACL', 'foo'
HTTPRequestMethodOriginalKey = attribute.Key("http.request.method_original")
// HTTPResendCountKey is the attribute Key conforming to the
// "http.resend_count" semantic conventions. It represents the ordinal
// number of request resending attempt (for any reason, including
// redirects).
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 3
// Note: The resend count SHOULD be updated each time an HTTP request gets
// resent by the client, regardless of what was the cause of the resending
// (e.g. redirection, authorization failure, 503 Server Unavailable,
// network issues, or any other).
HTTPResendCountKey = attribute.Key("http.resend_count")
// HTTPResponseBodySizeKey is the attribute Key conforming to the
// "http.response.body.size" semantic conventions. It represents the size
// of the response payload body in bytes. This is the number of bytes
// transferred excluding headers and is often, but not always, present as
// the
// [Content-Length](https://www.rfc-editor.org/rfc/rfc9110.html#field.content-length)
// header. For requests using transport encoding, this should be the
// compressed size.
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 3495
HTTPResponseBodySizeKey = attribute.Key("http.response.body.size")
// HTTPResponseStatusCodeKey is the attribute Key conforming to the
// "http.response.status_code" semantic conventions. It represents the
// [HTTP response status
// code](https://tools.ietf.org/html/rfc7231#section-6).
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 200
HTTPResponseStatusCodeKey = attribute.Key("http.response.status_code")
// HTTPRouteKey is the attribute Key conforming to the "http.route"
// semantic conventions. It represents the matched route (path template in
// the format used by the respective server framework). See note below
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '/users/:userID?', '{controller}/{action}/{id?}'
// Note: MUST NOT be populated when this is not supported by the HTTP
// server framework as the route attribute should have low-cardinality and
// the URI path can NOT substitute it.
// SHOULD include the [application
// root](/docs/http/http-spans.md#http-server-definitions) if there is one.
HTTPRouteKey = attribute.Key("http.route")
)
var (
// CONNECT method
HTTPRequestMethodConnect = HTTPRequestMethodKey.String("CONNECT")
// DELETE method
HTTPRequestMethodDelete = HTTPRequestMethodKey.String("DELETE")
// GET method
HTTPRequestMethodGet = HTTPRequestMethodKey.String("GET")
// HEAD method
HTTPRequestMethodHead = HTTPRequestMethodKey.String("HEAD")
// OPTIONS method
HTTPRequestMethodOptions = HTTPRequestMethodKey.String("OPTIONS")
// PATCH method
HTTPRequestMethodPatch = HTTPRequestMethodKey.String("PATCH")
// POST method
HTTPRequestMethodPost = HTTPRequestMethodKey.String("POST")
// PUT method
HTTPRequestMethodPut = HTTPRequestMethodKey.String("PUT")
// TRACE method
HTTPRequestMethodTrace = HTTPRequestMethodKey.String("TRACE")
// Any HTTP method that the instrumentation has no prior knowledge of
HTTPRequestMethodOther = HTTPRequestMethodKey.String("_OTHER")
)
// HTTPRequestBodySize returns an attribute KeyValue conforming to the
// "http.request.body.size" semantic conventions. It represents the size of the
// request payload body in bytes. This is the number of bytes transferred
// excluding headers and is often, but not always, present as the
// [Content-Length](https://www.rfc-editor.org/rfc/rfc9110.html#field.content-length)
// header. For requests using transport encoding, this should be the compressed
// size.
func HTTPRequestBodySize(val int) attribute.KeyValue {
return HTTPRequestBodySizeKey.Int(val)
}
// HTTPRequestMethodOriginal returns an attribute KeyValue conforming to the
// "http.request.method_original" semantic conventions. It represents the
// original HTTP method sent by the client in the request line.
func HTTPRequestMethodOriginal(val string) attribute.KeyValue {
return HTTPRequestMethodOriginalKey.String(val)
}
// HTTPResendCount returns an attribute KeyValue conforming to the
// "http.resend_count" semantic conventions. It represents the ordinal number
// of request resending attempt (for any reason, including redirects).
func HTTPResendCount(val int) attribute.KeyValue {
return HTTPResendCountKey.Int(val)
}
// HTTPResponseBodySize returns an attribute KeyValue conforming to the
// "http.response.body.size" semantic conventions. It represents the size of
// the response payload body in bytes. This is the number of bytes transferred
// excluding headers and is often, but not always, present as the
// [Content-Length](https://www.rfc-editor.org/rfc/rfc9110.html#field.content-length)
// header. For requests using transport encoding, this should be the compressed
// size.
func HTTPResponseBodySize(val int) attribute.KeyValue {
return HTTPResponseBodySizeKey.Int(val)
}
// HTTPResponseStatusCode returns an attribute KeyValue conforming to the
// "http.response.status_code" semantic conventions. It represents the [HTTP
// response status code](https://tools.ietf.org/html/rfc7231#section-6).
func HTTPResponseStatusCode(val int) attribute.KeyValue {
return HTTPResponseStatusCodeKey.Int(val)
}
// HTTPRoute returns an attribute KeyValue conforming to the "http.route"
// semantic conventions. It represents the matched route (path template in the
// format used by the respective server framework). See note below
func HTTPRoute(val string) attribute.KeyValue {
return HTTPRouteKey.String(val)
}
// These attributes may be used to describe the server in a connection-based
// network interaction where there is one side that initiates the connection
// (the client is the side that initiates the connection). This covers all TCP
// network interactions since TCP is connection-based and one side initiates
// the connection (an exception is made for peer-to-peer communication over TCP
// where the "user-facing" surface of the protocol / API does not expose a
// clear notion of client and server). This also covers UDP network
// interactions where one side initiates the interaction, e.g. QUIC (HTTP/3)
// and DNS.
const (
// ServerAddressKey is the attribute Key conforming to the "server.address"
// semantic conventions. It represents the server address - domain name if
// available without reverse DNS lookup, otherwise IP address or Unix
// domain socket name.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'example.com', '10.1.2.80', '/tmp/my.sock'
// Note: When observed from the client side, and when communicating through
// an intermediary, `server.address` SHOULD represent
// the server address behind any intermediaries (e.g. proxies) if it's
// available.
ServerAddressKey = attribute.Key("server.address")
// ServerPortKey is the attribute Key conforming to the "server.port"
// semantic conventions. It represents the server port number.
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 80, 8080, 443
// Note: When observed from the client side, and when communicating through
// an intermediary, `server.port` SHOULD represent the server port behind
// any intermediaries (e.g. proxies) if it's available.
ServerPortKey = attribute.Key("server.port")
)
// ServerAddress returns an attribute KeyValue conforming to the
// "server.address" semantic conventions. It represents the server address -
// domain name if available without reverse DNS lookup, otherwise IP address or
// Unix domain socket name.
func ServerAddress(val string) attribute.KeyValue {
return ServerAddressKey.String(val)
}
// ServerPort returns an attribute KeyValue conforming to the "server.port"
// semantic conventions. It represents the server port number.
func ServerPort(val int) attribute.KeyValue {
return ServerPortKey.Int(val)
}
// Session is defined as the period of time encompassing all activities
// performed by the application and the actions executed by the end user.
// Consequently, a Session is represented as a collection of Logs, Events, and
// Spans emitted by the Client Application throughout the Session's duration.
// Each Session is assigned a unique identifier, which is included as an
// attribute in the Logs, Events, and Spans generated during the Session's
// lifecycle.
const (
// SessionIDKey is the attribute Key conforming to the "session.id"
// semantic conventions. It represents a unique id to identify a session.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '00112233-4455-6677-8899-aabbccddeeff'
SessionIDKey = attribute.Key("session.id")
)
// SessionID returns an attribute KeyValue conforming to the "session.id"
// semantic conventions. It represents a unique id to identify a session.
func SessionID(val string) attribute.KeyValue {
return SessionIDKey.String(val)
}
// These attributes may be used to describe the sender of a network
// exchange/packet. These should be used when there is no client/server
// relationship between the two sides, or when that relationship is unknown.
// This covers low-level network interactions (e.g. packet tracing) where you
// don't know if there was a connection or which side initiated it. This also
// covers unidirectional UDP flows and peer-to-peer communication where the
// "user-facing" surface of the protocol / API does not expose a clear notion
// of client and server.
const (
// SourceAddressKey is the attribute Key conforming to the "source.address"
// semantic conventions. It represents the source address - domain name if
// available without reverse DNS lookup, otherwise IP address or Unix
// domain socket name.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'source.example.com', '10.1.2.80', '/tmp/my.sock'
// Note: When observed from the destination side, and when communicating
// through an intermediary, `source.address` SHOULD represent the source
// address behind any intermediaries (e.g. proxies) if it's available.
SourceAddressKey = attribute.Key("source.address")
// SourcePortKey is the attribute Key conforming to the "source.port"
// semantic conventions. It represents the source port number
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 3389, 2888
SourcePortKey = attribute.Key("source.port")
)
// SourceAddress returns an attribute KeyValue conforming to the
// "source.address" semantic conventions. It represents the source address -
// domain name if available without reverse DNS lookup, otherwise IP address or
// Unix domain socket name.
func SourceAddress(val string) attribute.KeyValue {
return SourceAddressKey.String(val)
}
// SourcePort returns an attribute KeyValue conforming to the "source.port"
// semantic conventions. It represents the source port number
func SourcePort(val int) attribute.KeyValue {
return SourcePortKey.Int(val)
}
// Semantic convention describing per-message attributes populated on messaging
// spans or links.
const (
// MessagingMessageBodySizeKey is the attribute Key conforming to the
// "messaging.message.body.size" semantic conventions. It represents the
// size of the message body in bytes.
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 1439
// Note: This can refer to both the compressed or uncompressed body size.
// If both sizes are known, the uncompressed
// body size should be used.
MessagingMessageBodySizeKey = attribute.Key("messaging.message.body.size")
// MessagingMessageConversationIDKey is the attribute Key conforming to the
// "messaging.message.conversation_id" semantic conventions. It represents
// the [conversation ID](#conversations) identifying the conversation to
// which the message belongs, represented as a string. Sometimes called
// "Correlation ID".
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'MyConversationID'
MessagingMessageConversationIDKey = attribute.Key("messaging.message.conversation_id")
// MessagingMessageEnvelopeSizeKey is the attribute Key conforming to the
// "messaging.message.envelope.size" semantic conventions. It represents
// the size of the message body and metadata in bytes.
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 2738
// Note: This can refer to both the compressed or uncompressed size. If
// both sizes are known, the uncompressed
// size should be used.
MessagingMessageEnvelopeSizeKey = attribute.Key("messaging.message.envelope.size")
// MessagingMessageIDKey is the attribute Key conforming to the
// "messaging.message.id" semantic conventions. It represents a value used
// by the messaging system as an identifier for the message, represented as
// a string.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '452a7c7c7c7048c2f887f61572b18fc2'
MessagingMessageIDKey = attribute.Key("messaging.message.id")
)
// MessagingMessageBodySize returns an attribute KeyValue conforming to the
// "messaging.message.body.size" semantic conventions. It represents the size
// of the message body in bytes.
func MessagingMessageBodySize(val int) attribute.KeyValue {
return MessagingMessageBodySizeKey.Int(val)
}
// MessagingMessageConversationID returns an attribute KeyValue conforming
// to the "messaging.message.conversation_id" semantic conventions. It
// represents the [conversation ID](#conversations) identifying the
// conversation to which the message belongs, represented as a string.
// Sometimes called "Correlation ID".
func MessagingMessageConversationID(val string) attribute.KeyValue {
return MessagingMessageConversationIDKey.String(val)
}
// MessagingMessageEnvelopeSize returns an attribute KeyValue conforming to
// the "messaging.message.envelope.size" semantic conventions. It represents
// the size of the message body and metadata in bytes.
func MessagingMessageEnvelopeSize(val int) attribute.KeyValue {
return MessagingMessageEnvelopeSizeKey.Int(val)
}
// MessagingMessageID returns an attribute KeyValue conforming to the
// "messaging.message.id" semantic conventions. It represents a value used by
// the messaging system as an identifier for the message, represented as a
// string.
func MessagingMessageID(val string) attribute.KeyValue {
return MessagingMessageIDKey.String(val)
}
// Semantic convention for attributes that describe messaging destination on
// broker
const (
// MessagingDestinationAnonymousKey is the attribute Key conforming to the
// "messaging.destination.anonymous" semantic conventions. It represents a
// boolean that is true if the message destination is anonymous (could be
// unnamed or have auto-generated name).
//
// Type: boolean
// RequirementLevel: Optional
// Stability: experimental
MessagingDestinationAnonymousKey = attribute.Key("messaging.destination.anonymous")
// MessagingDestinationNameKey is the attribute Key conforming to the
// "messaging.destination.name" semantic conventions. It represents the
// message destination name
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'MyQueue', 'MyTopic'
// Note: Destination name SHOULD uniquely identify a specific queue, topic
// or other entity within the broker. If
// the broker does not have such notion, the destination name SHOULD
// uniquely identify the broker.
MessagingDestinationNameKey = attribute.Key("messaging.destination.name")
// MessagingDestinationTemplateKey is the attribute Key conforming to the
// "messaging.destination.template" semantic conventions. It represents the
// low cardinality representation of the messaging destination name
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '/customers/{customerID}'
// Note: Destination names could be constructed from templates. An example
// would be a destination name involving a user name or product id.
// Although the destination name in this case is of high cardinality, the
// underlying template is of low cardinality and can be effectively used
// for grouping and aggregation.
MessagingDestinationTemplateKey = attribute.Key("messaging.destination.template")
// MessagingDestinationTemporaryKey is the attribute Key conforming to the
// "messaging.destination.temporary" semantic conventions. It represents a
// boolean that is true if the message destination is temporary and might
// not exist anymore after messages are processed.
//
// Type: boolean
// RequirementLevel: Optional
// Stability: experimental
MessagingDestinationTemporaryKey = attribute.Key("messaging.destination.temporary")
)
// MessagingDestinationAnonymous returns an attribute KeyValue conforming to
// the "messaging.destination.anonymous" semantic conventions. It represents a
// boolean that is true if the message destination is anonymous (could be
// unnamed or have auto-generated name).
func MessagingDestinationAnonymous(val bool) attribute.KeyValue {
return MessagingDestinationAnonymousKey.Bool(val)
}
// MessagingDestinationName returns an attribute KeyValue conforming to the
// "messaging.destination.name" semantic conventions. It represents the message
// destination name
func MessagingDestinationName(val string) attribute.KeyValue {
return MessagingDestinationNameKey.String(val)
}
// MessagingDestinationTemplate returns an attribute KeyValue conforming to
// the "messaging.destination.template" semantic conventions. It represents the
// low cardinality representation of the messaging destination name
func MessagingDestinationTemplate(val string) attribute.KeyValue {
return MessagingDestinationTemplateKey.String(val)
}
// MessagingDestinationTemporary returns an attribute KeyValue conforming to
// the "messaging.destination.temporary" semantic conventions. It represents a
// boolean that is true if the message destination is temporary and might not
// exist anymore after messages are processed.
func MessagingDestinationTemporary(val bool) attribute.KeyValue {
return MessagingDestinationTemporaryKey.Bool(val)
}
// Semantic convention for attributes that describe the publish messaging
// destination on broker. The term Publish Destination refers to the
// destination the message was originally published to. These attributes should
// be used on the consumer side when information about the publish destination
// is available and different than the destination message are consumed from.
const (
// MessagingDestinationPublishAnonymousKey is the attribute Key conforming
// to the "messaging.destination_publish.anonymous" semantic conventions.
// It represents a boolean that is true if the publish message destination
// is anonymous (could be unnamed or have auto-generated name).
//
// Type: boolean
// RequirementLevel: Optional
// Stability: experimental
MessagingDestinationPublishAnonymousKey = attribute.Key("messaging.destination_publish.anonymous")
// MessagingDestinationPublishNameKey is the attribute Key conforming to
// the "messaging.destination_publish.name" semantic conventions. It
// represents the name of the original destination the message was
// published to
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'MyQueue', 'MyTopic'
// Note: The name SHOULD uniquely identify a specific queue, topic, or
// other entity within the broker. If
// the broker does not have such notion, the original destination name
// SHOULD uniquely identify the broker.
MessagingDestinationPublishNameKey = attribute.Key("messaging.destination_publish.name")
)
// MessagingDestinationPublishAnonymous returns an attribute KeyValue
// conforming to the "messaging.destination_publish.anonymous" semantic
// conventions. It represents a boolean that is true if the publish message
// destination is anonymous (could be unnamed or have auto-generated name).
func MessagingDestinationPublishAnonymous(val bool) attribute.KeyValue {
return MessagingDestinationPublishAnonymousKey.Bool(val)
}
// MessagingDestinationPublishName returns an attribute KeyValue conforming
// to the "messaging.destination_publish.name" semantic conventions. It
// represents the name of the original destination the message was published to
func MessagingDestinationPublishName(val string) attribute.KeyValue {
return MessagingDestinationPublishNameKey.String(val)
}
// Attributes for RabbitMQ
const (
// MessagingRabbitmqDestinationRoutingKeyKey is the attribute Key
// conforming to the "messaging.rabbitmq.destination.routing_key" semantic
// conventions. It represents the rabbitMQ message routing key.
//
// Type: string
// RequirementLevel: ConditionallyRequired (If not empty.)
// Stability: experimental
// Examples: 'myKey'
MessagingRabbitmqDestinationRoutingKeyKey = attribute.Key("messaging.rabbitmq.destination.routing_key")
)
// MessagingRabbitmqDestinationRoutingKey returns an attribute KeyValue
// conforming to the "messaging.rabbitmq.destination.routing_key" semantic
// conventions. It represents the rabbitMQ message routing key.
func MessagingRabbitmqDestinationRoutingKey(val string) attribute.KeyValue {
return MessagingRabbitmqDestinationRoutingKeyKey.String(val)
}
// Attributes for Apache Kafka
const (
// MessagingKafkaConsumerGroupKey is the attribute Key conforming to the
// "messaging.kafka.consumer.group" semantic conventions. It represents the
// name of the Kafka Consumer Group that is handling the message. Only
// applies to consumers, not producers.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'my-group'
MessagingKafkaConsumerGroupKey = attribute.Key("messaging.kafka.consumer.group")
// MessagingKafkaDestinationPartitionKey is the attribute Key conforming to
// the "messaging.kafka.destination.partition" semantic conventions. It
// represents the partition the message is sent to.
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 2
MessagingKafkaDestinationPartitionKey = attribute.Key("messaging.kafka.destination.partition")
// MessagingKafkaMessageKeyKey is the attribute Key conforming to the
// "messaging.kafka.message.key" semantic conventions. It represents the
// message keys in Kafka are used for grouping alike messages to ensure
// they're processed on the same partition. They differ from
// `messaging.message.id` in that they're not unique. If the key is `null`,
// the attribute MUST NOT be set.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'myKey'
// Note: If the key type is not string, it's string representation has to
// be supplied for the attribute. If the key has no unambiguous, canonical
// string form, don't include its value.
MessagingKafkaMessageKeyKey = attribute.Key("messaging.kafka.message.key")
// MessagingKafkaMessageOffsetKey is the attribute Key conforming to the
// "messaging.kafka.message.offset" semantic conventions. It represents the
// offset of a record in the corresponding Kafka partition.
//
// Type: int
// RequirementLevel: Optional
// Stability: experimental
// Examples: 42
MessagingKafkaMessageOffsetKey = attribute.Key("messaging.kafka.message.offset")
// MessagingKafkaMessageTombstoneKey is the attribute Key conforming to the
// "messaging.kafka.message.tombstone" semantic conventions. It represents
// a boolean that is true if the message is a tombstone.
//
// Type: boolean
// RequirementLevel: ConditionallyRequired (If value is `true`. When
// missing, the value is assumed to be `false`.)
// Stability: experimental
MessagingKafkaMessageTombstoneKey = attribute.Key("messaging.kafka.message.tombstone")
)
// MessagingKafkaConsumerGroup returns an attribute KeyValue conforming to
// the "messaging.kafka.consumer.group" semantic conventions. It represents the
// name of the Kafka Consumer Group that is handling the message. Only applies
// to consumers, not producers.
func MessagingKafkaConsumerGroup(val string) attribute.KeyValue {
return MessagingKafkaConsumerGroupKey.String(val)
}
// MessagingKafkaDestinationPartition returns an attribute KeyValue
// conforming to the "messaging.kafka.destination.partition" semantic
// conventions. It represents the partition the message is sent to.
func MessagingKafkaDestinationPartition(val int) attribute.KeyValue {
return MessagingKafkaDestinationPartitionKey.Int(val)
}
// MessagingKafkaMessageKey returns an attribute KeyValue conforming to the
// "messaging.kafka.message.key" semantic conventions. It represents the
// message keys in Kafka are used for grouping alike messages to ensure they're
// processed on the same partition. They differ from `messaging.message.id` in
// that they're not unique. If the key is `null`, the attribute MUST NOT be
// set.
func MessagingKafkaMessageKey(val string) attribute.KeyValue {
return MessagingKafkaMessageKeyKey.String(val)
}
// MessagingKafkaMessageOffset returns an attribute KeyValue conforming to
// the "messaging.kafka.message.offset" semantic conventions. It represents the
// offset of a record in the corresponding Kafka partition.
func MessagingKafkaMessageOffset(val int) attribute.KeyValue {
return MessagingKafkaMessageOffsetKey.Int(val)
}
// MessagingKafkaMessageTombstone returns an attribute KeyValue conforming
// to the "messaging.kafka.message.tombstone" semantic conventions. It
// represents a boolean that is true if the message is a tombstone.
func MessagingKafkaMessageTombstone(val bool) attribute.KeyValue {
return MessagingKafkaMessageTombstoneKey.Bool(val)
}
// Attributes for Apache RocketMQ
const (
// MessagingRocketmqClientGroupKey is the attribute Key conforming to the
// "messaging.rocketmq.client_group" semantic conventions. It represents
// the name of the RocketMQ producer/consumer group that is handling the
// message. The client type is identified by the SpanKind.
//
// Type: string
// RequirementLevel: Required
// Stability: experimental
// Examples: 'myConsumerGroup'
MessagingRocketmqClientGroupKey = attribute.Key("messaging.rocketmq.client_group")
// MessagingRocketmqConsumptionModelKey is the attribute Key conforming to
// the "messaging.rocketmq.consumption_model" semantic conventions. It
// represents the model of message consumption. This only applies to
// consumer spans.
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
MessagingRocketmqConsumptionModelKey = attribute.Key("messaging.rocketmq.consumption_model")
// MessagingRocketmqMessageDelayTimeLevelKey is the attribute Key
// conforming to the "messaging.rocketmq.message.delay_time_level" semantic
// conventions. It represents the delay time level for delay message, which
// determines the message delay time.
//
// Type: int
// RequirementLevel: ConditionallyRequired (If the message type is delay
// and delivery timestamp is not specified.)
// Stability: experimental
// Examples: 3
MessagingRocketmqMessageDelayTimeLevelKey = attribute.Key("messaging.rocketmq.message.delay_time_level")
// MessagingRocketmqMessageDeliveryTimestampKey is the attribute Key
// conforming to the "messaging.rocketmq.message.delivery_timestamp"
// semantic conventions. It represents the timestamp in milliseconds that
// the delay message is expected to be delivered to consumer.
//
// Type: int
// RequirementLevel: ConditionallyRequired (If the message type is delay
// and delay time level is not specified.)
// Stability: experimental
// Examples: 1665987217045
MessagingRocketmqMessageDeliveryTimestampKey = attribute.Key("messaging.rocketmq.message.delivery_timestamp")
// MessagingRocketmqMessageGroupKey is the attribute Key conforming to the
// "messaging.rocketmq.message.group" semantic conventions. It represents
// the it is essential for FIFO message. Messages that belong to the same
// message group are always processed one by one within the same consumer
// group.
//
// Type: string
// RequirementLevel: ConditionallyRequired (If the message type is FIFO.)
// Stability: experimental
// Examples: 'myMessageGroup'
MessagingRocketmqMessageGroupKey = attribute.Key("messaging.rocketmq.message.group")
// MessagingRocketmqMessageKeysKey is the attribute Key conforming to the
// "messaging.rocketmq.message.keys" semantic conventions. It represents
// the key(s) of message, another way to mark message besides message id.
//
// Type: string[]
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'keyA', 'keyB'
MessagingRocketmqMessageKeysKey = attribute.Key("messaging.rocketmq.message.keys")
// MessagingRocketmqMessageTagKey is the attribute Key conforming to the
// "messaging.rocketmq.message.tag" semantic conventions. It represents the
// secondary classifier of message besides topic.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'tagA'
MessagingRocketmqMessageTagKey = attribute.Key("messaging.rocketmq.message.tag")
// MessagingRocketmqMessageTypeKey is the attribute Key conforming to the
// "messaging.rocketmq.message.type" semantic conventions. It represents
// the type of message.
//
// Type: Enum
// RequirementLevel: Optional
// Stability: experimental
MessagingRocketmqMessageTypeKey = attribute.Key("messaging.rocketmq.message.type")
// MessagingRocketmqNamespaceKey is the attribute Key conforming to the
// "messaging.rocketmq.namespace" semantic conventions. It represents the
// namespace of RocketMQ resources, resources in different namespaces are
// individual.
//
// Type: string
// RequirementLevel: Required
// Stability: experimental
// Examples: 'myNamespace'
MessagingRocketmqNamespaceKey = attribute.Key("messaging.rocketmq.namespace")
)
var (
// Clustering consumption model
MessagingRocketmqConsumptionModelClustering = MessagingRocketmqConsumptionModelKey.String("clustering")
// Broadcasting consumption model
MessagingRocketmqConsumptionModelBroadcasting = MessagingRocketmqConsumptionModelKey.String("broadcasting")
)
var (
// Normal message
MessagingRocketmqMessageTypeNormal = MessagingRocketmqMessageTypeKey.String("normal")
// FIFO message
MessagingRocketmqMessageTypeFifo = MessagingRocketmqMessageTypeKey.String("fifo")
// Delay message
MessagingRocketmqMessageTypeDelay = MessagingRocketmqMessageTypeKey.String("delay")
// Transaction message
MessagingRocketmqMessageTypeTransaction = MessagingRocketmqMessageTypeKey.String("transaction")
)
// MessagingRocketmqClientGroup returns an attribute KeyValue conforming to
// the "messaging.rocketmq.client_group" semantic conventions. It represents
// the name of the RocketMQ producer/consumer group that is handling the
// message. The client type is identified by the SpanKind.
func MessagingRocketmqClientGroup(val string) attribute.KeyValue {
return MessagingRocketmqClientGroupKey.String(val)
}
// MessagingRocketmqMessageDelayTimeLevel returns an attribute KeyValue
// conforming to the "messaging.rocketmq.message.delay_time_level" semantic
// conventions. It represents the delay time level for delay message, which
// determines the message delay time.
func MessagingRocketmqMessageDelayTimeLevel(val int) attribute.KeyValue {
return MessagingRocketmqMessageDelayTimeLevelKey.Int(val)
}
// MessagingRocketmqMessageDeliveryTimestamp returns an attribute KeyValue
// conforming to the "messaging.rocketmq.message.delivery_timestamp" semantic
// conventions. It represents the timestamp in milliseconds that the delay
// message is expected to be delivered to consumer.
func MessagingRocketmqMessageDeliveryTimestamp(val int) attribute.KeyValue {
return MessagingRocketmqMessageDeliveryTimestampKey.Int(val)
}
// MessagingRocketmqMessageGroup returns an attribute KeyValue conforming to
// the "messaging.rocketmq.message.group" semantic conventions. It represents
// the it is essential for FIFO message. Messages that belong to the same
// message group are always processed one by one within the same consumer
// group.
func MessagingRocketmqMessageGroup(val string) attribute.KeyValue {
return MessagingRocketmqMessageGroupKey.String(val)
}
// MessagingRocketmqMessageKeys returns an attribute KeyValue conforming to
// the "messaging.rocketmq.message.keys" semantic conventions. It represents
// the key(s) of message, another way to mark message besides message id.
func MessagingRocketmqMessageKeys(val ...string) attribute.KeyValue {
return MessagingRocketmqMessageKeysKey.StringSlice(val)
}
// MessagingRocketmqMessageTag returns an attribute KeyValue conforming to
// the "messaging.rocketmq.message.tag" semantic conventions. It represents the
// secondary classifier of message besides topic.
func MessagingRocketmqMessageTag(val string) attribute.KeyValue {
return MessagingRocketmqMessageTagKey.String(val)
}
// MessagingRocketmqNamespace returns an attribute KeyValue conforming to
// the "messaging.rocketmq.namespace" semantic conventions. It represents the
// namespace of RocketMQ resources, resources in different namespaces are
// individual.
func MessagingRocketmqNamespace(val string) attribute.KeyValue {
return MessagingRocketmqNamespaceKey.String(val)
}
// Attributes describing URL.
const (
// URLFragmentKey is the attribute Key conforming to the "url.fragment"
// semantic conventions. It represents the [URI
// fragment](https://www.rfc-editor.org/rfc/rfc3986#section-3.5) component
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'SemConv'
URLFragmentKey = attribute.Key("url.fragment")
// URLFullKey is the attribute Key conforming to the "url.full" semantic
// conventions. It represents the absolute URL describing a network
// resource according to [RFC3986](https://www.rfc-editor.org/rfc/rfc3986)
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'https://www.foo.bar/search?q=OpenTelemetry#SemConv',
// '//localhost'
// Note: For network calls, URL usually has
// `scheme://host[:port][path][?query][#fragment]` format, where the
// fragment is not transmitted over HTTP, but if it is known, it should be
// included nevertheless.
// `url.full` MUST NOT contain credentials passed via URL in form of
// `https://username:password@www.example.com/`. In such case username and
// password should be redacted and attribute's value should be
// `https://REDACTED:REDACTED@www.example.com/`.
// `url.full` SHOULD capture the absolute URL when it is available (or can
// be reconstructed) and SHOULD NOT be validated or modified except for
// sanitizing purposes.
URLFullKey = attribute.Key("url.full")
// URLPathKey is the attribute Key conforming to the "url.path" semantic
// conventions. It represents the [URI
// path](https://www.rfc-editor.org/rfc/rfc3986#section-3.3) component
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: '/search'
// Note: When missing, the value is assumed to be `/`
URLPathKey = attribute.Key("url.path")
// URLQueryKey is the attribute Key conforming to the "url.query" semantic
// conventions. It represents the [URI
// query](https://www.rfc-editor.org/rfc/rfc3986#section-3.4) component
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'q=OpenTelemetry'
// Note: Sensitive content provided in query string SHOULD be scrubbed when
// instrumentations can identify it.
URLQueryKey = attribute.Key("url.query")
// URLSchemeKey is the attribute Key conforming to the "url.scheme"
// semantic conventions. It represents the [URI
// scheme](https://www.rfc-editor.org/rfc/rfc3986#section-3.1) component
// identifying the used protocol.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'https', 'ftp', 'telnet'
URLSchemeKey = attribute.Key("url.scheme")
)
// URLFragment returns an attribute KeyValue conforming to the
// "url.fragment" semantic conventions. It represents the [URI
// fragment](https://www.rfc-editor.org/rfc/rfc3986#section-3.5) component
func URLFragment(val string) attribute.KeyValue {
return URLFragmentKey.String(val)
}
// URLFull returns an attribute KeyValue conforming to the "url.full"
// semantic conventions. It represents the absolute URL describing a network
// resource according to [RFC3986](https://www.rfc-editor.org/rfc/rfc3986)
func URLFull(val string) attribute.KeyValue {
return URLFullKey.String(val)
}
// URLPath returns an attribute KeyValue conforming to the "url.path"
// semantic conventions. It represents the [URI
// path](https://www.rfc-editor.org/rfc/rfc3986#section-3.3) component
func URLPath(val string) attribute.KeyValue {
return URLPathKey.String(val)
}
// URLQuery returns an attribute KeyValue conforming to the "url.query"
// semantic conventions. It represents the [URI
// query](https://www.rfc-editor.org/rfc/rfc3986#section-3.4) component
func URLQuery(val string) attribute.KeyValue {
return URLQueryKey.String(val)
}
// URLScheme returns an attribute KeyValue conforming to the "url.scheme"
// semantic conventions. It represents the [URI
// scheme](https://www.rfc-editor.org/rfc/rfc3986#section-3.1) component
// identifying the used protocol.
func URLScheme(val string) attribute.KeyValue {
return URLSchemeKey.String(val)
}
// Describes user-agent attributes.
const (
// UserAgentOriginalKey is the attribute Key conforming to the
// "user_agent.original" semantic conventions. It represents the value of
// the [HTTP
// User-Agent](https://www.rfc-editor.org/rfc/rfc9110.html#field.user-agent)
// header sent by the client.
//
// Type: string
// RequirementLevel: Optional
// Stability: experimental
// Examples: 'CERN-LineMode/2.15 libwww/2.17b3'
UserAgentOriginalKey = attribute.Key("user_agent.original")
)
// UserAgentOriginal returns an attribute KeyValue conforming to the
// "user_agent.original" semantic conventions. It represents the value of the
// [HTTP
// User-Agent](https://www.rfc-editor.org/rfc/rfc9110.html#field.user-agent)
// header sent by the client.
func UserAgentOriginal(val string) attribute.KeyValue {
return UserAgentOriginalKey.String(val)
}