Skip to content

Commit 570bf8a

Browse files
authored
[profiles] Clarify the original payload field comments. (#722)
* Clarify the original payload field comments.
1 parent 110d7ed commit 570bf8a

File tree

2 files changed

+22
-8
lines changed

2 files changed

+22
-8
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ The full list of changes can be found in the compare view for the respective rel
66

77
### Changed
88

9+
- profiles: clarify the original payload field comments. [#722](https://github.com/open-telemetry/opentelemetry-proto/pull/722)
910
- profiles: add a note about cardinality implications for attribute values. [#713](https://github.com/open-telemetry/opentelemetry-proto/pull/713)
1011
- profiles: rename line -> lines and sample -> samples since they are repeated fields. [#712](https://github.com/open-telemetry/opentelemetry-proto/pull/712)
1112

opentelemetry/proto/profiles/v1development/profiles.proto

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -305,15 +305,28 @@ message Profile {
305305
// attributes. If this value is 0, then no attributes were dropped.
306306
uint32 dropped_attributes_count = 9;
307307

308-
// Specifies format of the original payload. Common values are defined in semantic conventions. [required if original_payload is present]
308+
// The original payload format. See also original_payload. Optional, but the
309+
// format and the bytes must be set or unset together.
310+
//
311+
// The allowed values for the format string are defined by the OpenTelemetry
312+
// specification. Some examples are "jfr", "pprof", "linux_perf".
313+
//
314+
// The original payload may be optionally provided when the conversion to the
315+
// OLTP format was done from a different format with some loss of the fidelity
316+
// and the receiver may want to store the original payload to allow future
317+
// lossless export or reinterpretation. Some examples of the original format
318+
// are JFR (Java Flight Recorder), pprof, Linux perf.
319+
//
320+
// Even when the original payload is in a format that is semantically close to
321+
// OTLP, such as pprof, a conversion may still be lossy in some cases (e.g. if
322+
// the pprof file contains custom extensions or conventions).
323+
//
324+
// The original payload can be large in size, so including the original
325+
// payload should be configurable by the profiler or collector options. The
326+
// default behavior should be to not include the original payload.
309327
string original_payload_format = 10;
310-
311-
// Original payload can be stored in this field. This can be useful for users who want to get the original payload.
312-
// Formats such as JFR are highly extensible and can contain more information than what is defined in this spec.
313-
// Inclusion of original payload should be configurable by the user. Default behavior should be to not include the original payload.
314-
// If the original payload is in pprof format, it SHOULD not be included in this field.
315-
// The field is optional, however if it is present then equivalent converted data should be populated in other fields
316-
// of this message as far as is practicable.
328+
// The original payload bytes. See also original_payload_format. Optional, but
329+
// format and the bytes must be set or unset together.
317330
bytes original_payload = 11;
318331

319332
// References to attributes in attribute_table. [optional]

0 commit comments

Comments
 (0)