🛑 Breaking changes 🛑
rpc: Renamerpc.client|server.durationtorpc.client|server.call.duration, change RPC duration metrics from milliseconds to seconds, and clarify metric and span duration semantics for streaming. (#383, #2961)rpc: Renamerpc.grpc.request.metadataandrpc.connect_rpc.request.metadatatorpc.request.metadatarpc.grpc.response.metadataandrpc.connect_rpc.response.metadatatorpc.response.metadata
(#2869, #3169)rpc: Mergerpc.methodandrpc.serviceinto fully-qualifiedrpc.methodattribute. Clarify how to handle possible high cardinality ofrpc.methodin edge cases. Clarifyrpc.methodusage in span names. (#2863, #3196, #3223)rpc: Deprecaterpc.grpc.status_code,rpc.connect_rpc.error_codeandrpc.jsonrpc.error_codeattributes in favor of the more generalrpc.response.status_codeattribute.
(#1504, #2920)rpc: Align RPC conventions with naming guidelines. Renames:rpc.systemtorpc.system.name. The values are also updated to match
naming guidelines:connect_rpcis renamed toconnectrpc;
apache_dubbois renamed todubbo;
java_rmi,dotnet_wcf, andonc_rpcare not included in the new enum.rpc.jsonrpc.request_idtojsonrpc.request.id.rpc.jsonrpc.versiontojsonrpc.protocol.version.
(#2703, #2921)
system, linux: Rename*.linux.memorymetrics and attributes to*.memory.linux(#1661)
🚩 Deprecations 🚩
peer: Thepeer.serviceattribute has been deprecated in favor ofservice.peer.name. (#2945)
Thepeer.serviceattribute has been renamed toservice.peer.nameto align with theservice.{name|namespace}resource attributes.process: Introduceprocess.unix.file_descriptor.countandprocess.windows.handle.countmetrics.
Deprecateprocess.open_file_descriptor.count
(#3188)
💡 Enhancements 💡
-
cloud: Addgcp.agent_engineas a value forcloud.platform(#2957) -
cloud: Add Oracle Cloud Infrastructure to SemConv Areas list (#3190) -
cloud: Add Hetzner Cloud to cloud.provider and cloud.platform (#2758) -
cloud: Add Linode (Akamai Cloud) to cloud.provider and linode_cloud_compute to cloud.platform (#2756) -
cloud: Add Vultr Cloud to cloud.provider and cloud.platform (#2757) -
k8s: Add missing entity associations to k8s and container metrics (#3213) -
k8s: Addsk8s.pod.ip,k8s.pod.hostnameandk8s.pod.start_timeattributes (#3171) -
k8s: Define missing roles for entity attributes (#3135) -
k8s: Promote a selection of k8s and container attributes to alpha (#3120)
The selected attributes being promoted are used by the Collector Contrib components
that are targeting stability. See opentelemetry-collector-contrib/#44130 -
k8s: Define roles for k8s entities' attributes (#3017) -
otel: Addotel.event.nameattribute for use by non-OTLP exporters and logging libraries. (#2913)
Theotel.event.nameattribute can be used by:- Non-OTLP exporters to emit the
EventName - Applications using existing logging libraries to add event name information that can be used to set the
EventNamefield by Collector or SDK components
- Non-OTLP exporters to emit the
-
pprof: add various pprof attributes to support lossless conversion from and to OTel profiles. (#3078) -
rpc: Use consistent set of attributes between RPC spans and metrics (#2922, #3197)- Use
rpc.response.status_codeon common metrics and spans. - Make
error.typenote consistent between metrics and spans. - Promote notes on
rpc.methodandrpc.serviceto attribute definition.
- Use
-
rpc: Markrpc.system.name,rpc.method,rpc.service,server.address, andserver.portas sampling relevant attributes in RPC spans.
(#3202) -
service: Splits service into three entities: namespace, service and instance. (#2880) -
service:service.peer.nameandservice.peer.namespacehave been introduced as the replacement forpeer.serviceto describe remote services that use both a name and a namespace. (#2945)
Thepeer.serviceattribute could not fully represent theservice.{name|namespace}resource attributes;
service.peer.nameandservice.peer.namespaceprovide a more complete representation.
🧰 Bug fixes 🧰
rpc: Demoteserver.addressfrom required to conditionally required (when available) on RPC spans and metrics. Updateserver.portrequirement level accordingly. (#3236)
New Contributors
- @paulojmdias made their first contribution in #2756
- @codeboten made their first contribution in #3164
- @marleypowell made their first contribution in #3166
- @mmanciop made their first contribution in #3097
Full Changelog: v1.38.0...v1.39.0