Documentation ¶
Index ¶
- Constants
- Variables
- func GenProfileCKTable(cluster, dbName, tableName, storagePolicy string, ttl int, ...) *ckdb.Table
- func ProfileColumns() []*ckdb.Column
- func ReleaseInProcess(p *InProcessProfile)
- type ClusterNode
- type Counter
- type InProcessProfile
- func (p *InProcessProfile) FillProfile(input *storage.PutInput, platformData *grpc.PlatformInfoTable, vtapID uint16, ...)
- func (p *InProcessProfile) GenerateFlowTags(cache *flow_tag.FlowTagCache)
- func (p *InProcessProfile) Release()
- func (p *InProcessProfile) String() string
- func (p *InProcessProfile) WriteBlock(block *ckdb.Block)
- type ProfileWriter
Constants ¶
View Source
const ( DefaultPartition = ckdb.TimeFuncHour LabelTraceID = "trace_id" LabelSpanName = "span_name" LabelAppService = "app_service" LabelAppInstance = "app_instance" LabelLanguageType = "profile_language_type" )
View Source
const ( PROFILE_DB = "profile" PROFILE_TABLE = "in_process" )
Variables ¶
View Source
var InProcessCounter uint32
Functions ¶
func GenProfileCKTable ¶
func ProfileColumns ¶
func ReleaseInProcess ¶
func ReleaseInProcess(p *InProcessProfile)
Types ¶
type ClusterNode ¶
type InProcessProfile ¶
type InProcessProfile struct { Time uint32 // Profile AppService string `json:"app_service"` ProfileLocationStr string `json:"profile_location_str"` // package/(class/struct)/function name, e.g.: java/lang/Thread.run ProfileValue int64 `json:"profile_value"` // profile_event_type 的取值与 profile_value_unit 对应关系见下 // profile_event_type: relations between profile_event_type and profile_value_unit is under the struct definition ProfileEventType string `json:"profile_event_type"` // event_type, e.g.: cpu/itimer... ProfileValueUnit string `json:"profile_value_unit"` ProfileCreateTimestamp int64 `json:"profile_create_timestamp"` // 数据上传时间 while data upload to server ProfileInTimestamp int64 `json:"profile_in_timestamp"` // 数据写入时间 while data write in storage ProfileLanguageType string `json:"profile_language_type"` // e.g.: Golang/Java/Python... ProfileID string `json:"profile_id"` TraceID string `json:"trace_id"` SpanName string `json:"span_name"` AppInstance string `json:"app_instance"` TagNames []string `json:"tag_names"` TagValues []string `json:"tag_values"` CompressionAlgo string `json:"compression_algo"` // Ebpf Profile Infos ProcessID uint32 `json:"process_id"` ProcessStartTime int64 `json:"process_start_time"` GPID uint32 // Universal Tag VtapID uint16 RegionID uint16 AZID uint16 SubnetID uint16 L3EpcID int32 HostID uint16 PodID uint32 PodNodeID uint32 PodNSID uint16 PodClusterID uint16 PodGroupID uint32 IP4 uint32 `json:"ip4"` IP6 net.IP `json:"ip6"` IsIPv4 bool `json:"is_ipv4"` L3DeviceType uint8 L3DeviceID uint32 ServiceID uint32 // contains filtered or unexported fields }
func AcquireInProcess ¶
func AcquireInProcess() *InProcessProfile
func (*InProcessProfile) FillProfile ¶
func (p *InProcessProfile) FillProfile(input *storage.PutInput, platformData *grpc.PlatformInfoTable, vtapID uint16, podID uint32, profileName string, eventType string, location string, compressionAlgo string, self int64, inTimeStamp time.Time, languageType string, pid uint32, stime int64, tagNames []string, tagValues []string)
func (*InProcessProfile) GenerateFlowTags ¶
func (p *InProcessProfile) GenerateFlowTags(cache *flow_tag.FlowTagCache)
func (*InProcessProfile) Release ¶
func (p *InProcessProfile) Release()
func (*InProcessProfile) String ¶
func (p *InProcessProfile) String() string
func (*InProcessProfile) WriteBlock ¶
func (p *InProcessProfile) WriteBlock(block *ckdb.Block)
type ProfileWriter ¶
func NewProfileWriter ¶
func NewProfileWriter(msgType datatype.MessageType, decoderIndex int, config *config.Config) (*ProfileWriter, error)
func (*ProfileWriter) GetCounter ¶
func (p *ProfileWriter) GetCounter() interface{}
func (*ProfileWriter) Write ¶
func (p *ProfileWriter) Write(m interface{})
Click to show internal directories.
Click to hide internal directories.