Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -162,10 +162,10 @@ gen-ruby:
$(PROTOC) --ruby_out=./$(PROTO_GEN_RUBY_DIR) --grpc-ruby_out=./$(PROTO_GEN_RUBY_DIR) opentelemetry/proto/collector/logs/v1/logs_service.proto
$(PROTOC) --ruby_out=./$(PROTO_GEN_RUBY_DIR) --grpc-ruby_out=./$(PROTO_GEN_RUBY_DIR) opentelemetry/proto/collector/profiles/v1development/profiles_service.proto

# The Profiling protocol is still development. So it is excluded from the breaking-change check.
# The Profiling and ProcessContext protocols are still development. So they are excluded from the breaking-change check.
.PHONY: breaking-change
breaking-change:
$(BUF) breaking --against $(BUF_AGAINST) --config '{"version":"v1","breaking":{"ignore":["opentelemetry/proto/profiles", "opentelemetry/proto/collector/profiles"]}}' $(BUF_FLAGS)
$(BUF) breaking --against $(BUF_AGAINST) --config '{"version":"v1","breaking":{"ignore":["opentelemetry/proto/profiles", "opentelemetry/proto/collector/profiles", "opentelemetry/proto/processcontext"]}}' $(BUF_FLAGS)


ALL_DOCS := $(shell find . -type f -name '*.md' -not -path './.github/*' -not -path './node_modules/*' | sort)
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ components as indicated by the Maturity table below.
| trace/\*<br>collector/trace/* | Stable | [Stable](docs/specification.md#json-protobuf-encoding) |
| logs/\*<br>collector/logs/* | Stable | [Stable](docs/specification.md#json-protobuf-encoding) |
| profiles/\*<br>collector/profiles/* | Development | [Development](docs/specification.md#json-protobuf-encoding) |
| processcontext/* | Development | [Development](docs/specification.md#json-protobuf-encoding) |

(See [Versioning and Stability](https://github.com/open-telemetry/opentelemetry-specification/blob/a08d1f92f62acd4aafe4dfaa04ae7bf28600d49e/specification/versioning-and-stability.md)
for definition of maturity levels).
Expand Down
Comment thread
florianl marked this conversation as resolved.
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
// Copyright The OpenTelemetry Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

syntax = "proto3";

package opentelemetry.proto.processcontext.v1development;

import "opentelemetry/proto/common/v1/common.proto";
import "opentelemetry/proto/resource/v1/resource.proto";

option csharp_namespace = "OpenTelemetry.Proto.ProcessContext.V1Development";
option java_multiple_files = true;
option java_package = "io.opentelemetry.proto.processcontext.v1development";
option java_outer_classname = "ProcessContextProto";
option go_package = "go.opentelemetry.io/proto/otlp/processcontext/v1development";

// ProcessContext represents the payload for the process context sharing mechanism.
//
// This message is designed to be published by OpenTelemetry SDKs via a memory-mapped
// region, allowing external readers (such as the OpenTelemetry eBPF Profiler) to
// discover and read resource attributes from instrumented processes without requiring
// direct integration or process activity.
//
// See OTEP 4719 for details of this mechanism.
Comment thread
ivoanjo marked this conversation as resolved.
Outdated
//
// Status: [Development]
message ProcessContext {
// The resource attributes describing this process.
//
// Attribute keys MUST be unique (it is not allowed to have more than one
// attribute with the same key). The behavior of software that receives
// duplicated keys can be unpredictable.
//
// Attributes SHOULD follow OpenTelemetry semantic conventions where applicable.
// See: https://opentelemetry.io/docs/specs/semconv/
Comment thread
ivoanjo marked this conversation as resolved.
Outdated
opentelemetry.proto.resource.v1.Resource resource = 1;

// Additional attributes to share with external readers that are not part of
// the standard Resource. [Optional]
//
// This field allows publishers to include supplementary key-value pairs that
// may be useful for external readers but are not part of the SDK's configured
// Resource.
//
// Consider adding any keys here to the profiles semantic conventions in
// https://opentelemetry.io/docs/specs/semconv/general/profiles/
repeated opentelemetry.proto.common.v1.KeyValue attributes = 2;
}