mirror of
https://github.com/hanzoai/telemetry.git
synced 2026-10-30 20:01:49 +00:00
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description pcommon.Timestamp better represents a point in time rather than a duration. So keeping the proto field type for DurationNano is a better fit. Corresponding Collector-contrib change: https://github.com/open-telemetry/opentelemetry-collector-contrib/pull/44397 ping @open-telemetry/profiling-approvers <!-- Issue number if applicable --> #### Link to tracking issue Fixes # <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: Florian Lehner <[email protected]>
147 lines
4.6 KiB
Go
147 lines
4.6 KiB
Go
// Copyright The OpenTelemetry Authors
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
// Code generated by "internal/cmd/pdatagen/main.go". DO NOT EDIT.
|
|
// To regenerate this file run "make genpdata".
|
|
|
|
package pprofile
|
|
|
|
import (
|
|
"go.opentelemetry.io/collector/pdata/internal"
|
|
"go.opentelemetry.io/collector/pdata/pcommon"
|
|
)
|
|
|
|
// Profile are an implementation of the pprofextended data model.
|
|
|
|
// This is a reference type, if passed by value and callee modifies it the
|
|
// caller will see the modification.
|
|
//
|
|
// Must use NewProfile function to create new instances.
|
|
// Important: zero-initialized instance is not valid for use.
|
|
type Profile struct {
|
|
orig *internal.Profile
|
|
state *internal.State
|
|
}
|
|
|
|
func newProfile(orig *internal.Profile, state *internal.State) Profile {
|
|
return Profile{orig: orig, state: state}
|
|
}
|
|
|
|
// NewProfile creates a new empty Profile.
|
|
//
|
|
// This must be used only in testing code. Users should use "AppendEmpty" when part of a Slice,
|
|
// OR directly access the member if this is embedded in another struct.
|
|
func NewProfile() Profile {
|
|
return newProfile(internal.NewProfile(), internal.NewState())
|
|
}
|
|
|
|
// MoveTo moves all properties from the current struct overriding the destination and
|
|
// resetting the current instance to its zero value
|
|
func (ms Profile) MoveTo(dest Profile) {
|
|
ms.state.AssertMutable()
|
|
dest.state.AssertMutable()
|
|
// If they point to the same data, they are the same, nothing to do.
|
|
if ms.orig == dest.orig {
|
|
return
|
|
}
|
|
internal.DeleteProfile(dest.orig, false)
|
|
*dest.orig, *ms.orig = *ms.orig, *dest.orig
|
|
}
|
|
|
|
// SampleType returns the sampletype associated with this Profile.
|
|
func (ms Profile) SampleType() ValueType {
|
|
return newValueType(&ms.orig.SampleType, ms.state)
|
|
}
|
|
|
|
// Samples returns the Samples associated with this Profile.
|
|
func (ms Profile) Samples() SampleSlice {
|
|
return newSampleSlice(&ms.orig.Samples, ms.state)
|
|
}
|
|
|
|
// Time returns the time associated with this Profile.
|
|
func (ms Profile) Time() pcommon.Timestamp {
|
|
return pcommon.Timestamp(ms.orig.TimeUnixNano)
|
|
}
|
|
|
|
// SetTime replaces the time associated with this Profile.
|
|
func (ms Profile) SetTime(v pcommon.Timestamp) {
|
|
ms.state.AssertMutable()
|
|
ms.orig.TimeUnixNano = uint64(v)
|
|
}
|
|
|
|
// DurationNano returns the durationnano associated with this Profile.
|
|
func (ms Profile) DurationNano() uint64 {
|
|
return ms.orig.DurationNano
|
|
}
|
|
|
|
// SetDurationNano replaces the durationnano associated with this Profile.
|
|
func (ms Profile) SetDurationNano(v uint64) {
|
|
ms.state.AssertMutable()
|
|
ms.orig.DurationNano = v
|
|
}
|
|
|
|
// PeriodType returns the periodtype associated with this Profile.
|
|
func (ms Profile) PeriodType() ValueType {
|
|
return newValueType(&ms.orig.PeriodType, ms.state)
|
|
}
|
|
|
|
// Period returns the period associated with this Profile.
|
|
func (ms Profile) Period() int64 {
|
|
return ms.orig.Period
|
|
}
|
|
|
|
// SetPeriod replaces the period associated with this Profile.
|
|
func (ms Profile) SetPeriod(v int64) {
|
|
ms.state.AssertMutable()
|
|
ms.orig.Period = v
|
|
}
|
|
|
|
// ProfileID returns the profileid associated with this Profile.
|
|
func (ms Profile) ProfileID() ProfileID {
|
|
return ProfileID(ms.orig.ProfileId)
|
|
}
|
|
|
|
// SetProfileID replaces the profileid associated with this Profile.
|
|
func (ms Profile) SetProfileID(v ProfileID) {
|
|
ms.state.AssertMutable()
|
|
ms.orig.ProfileId = internal.ProfileID(v)
|
|
}
|
|
|
|
// DroppedAttributesCount returns the droppedattributescount associated with this Profile.
|
|
func (ms Profile) DroppedAttributesCount() uint32 {
|
|
return ms.orig.DroppedAttributesCount
|
|
}
|
|
|
|
// SetDroppedAttributesCount replaces the droppedattributescount associated with this Profile.
|
|
func (ms Profile) SetDroppedAttributesCount(v uint32) {
|
|
ms.state.AssertMutable()
|
|
ms.orig.DroppedAttributesCount = v
|
|
}
|
|
|
|
// OriginalPayloadFormat returns the originalpayloadformat associated with this Profile.
|
|
func (ms Profile) OriginalPayloadFormat() string {
|
|
return ms.orig.OriginalPayloadFormat
|
|
}
|
|
|
|
// SetOriginalPayloadFormat replaces the originalpayloadformat associated with this Profile.
|
|
func (ms Profile) SetOriginalPayloadFormat(v string) {
|
|
ms.state.AssertMutable()
|
|
ms.orig.OriginalPayloadFormat = v
|
|
}
|
|
|
|
// OriginalPayload returns the OriginalPayload associated with this Profile.
|
|
func (ms Profile) OriginalPayload() pcommon.ByteSlice {
|
|
return pcommon.ByteSlice(internal.NewByteSliceWrapper(&ms.orig.OriginalPayload, ms.state))
|
|
}
|
|
|
|
// AttributeIndices returns the AttributeIndices associated with this Profile.
|
|
func (ms Profile) AttributeIndices() pcommon.Int32Slice {
|
|
return pcommon.Int32Slice(internal.NewInt32SliceWrapper(&ms.orig.AttributeIndices, ms.state))
|
|
}
|
|
|
|
// CopyTo copies all properties from the current struct overriding the destination.
|
|
func (ms Profile) CopyTo(dest Profile) {
|
|
dest.state.AssertMutable()
|
|
internal.CopyProfile(dest.orig, ms.orig)
|
|
}
|