Documentation ¶
Index ¶
- Variables
- func RegisterTraceCollectorServer(s grpc.ServiceRegistrar, srv TraceCollectorServer)
- type Aws
- func (*Aws) Descriptor() ([]byte, []int)deprecated
- func (x *Aws) GetCloudAccountId() string
- func (x *Aws) GetCloudAvailabilityZone() string
- func (x *Aws) GetCloudPlatform() string
- func (x *Aws) GetCloudProvider() string
- func (x *Aws) GetCloudRegion() string
- func (x *Aws) GetHostId() string
- func (x *Aws) GetHostImageId() string
- func (x *Aws) GetHostName() string
- func (x *Aws) GetHostType() string
- func (*Aws) ProtoMessage()
- func (x *Aws) ProtoReflect() protoreflect.Message
- func (x *Aws) Reset()
- func (x *Aws) String() string
- type Azure
- func (*Azure) Descriptor() ([]byte, []int)deprecated
- func (x *Azure) GetAzureResourceGroupName() string
- func (x *Azure) GetAzureVmName() string
- func (x *Azure) GetAzureVmScaleSetName() string
- func (x *Azure) GetAzureVmSize() string
- func (x *Azure) GetCloudAccountId() string
- func (x *Azure) GetCloudPlatform() string
- func (x *Azure) GetCloudProvider() string
- func (x *Azure) GetCloudRegion() string
- func (x *Azure) GetHostId() string
- func (x *Azure) GetHostName() string
- func (*Azure) ProtoMessage()
- func (x *Azure) ProtoReflect() protoreflect.Message
- func (x *Azure) Reset()
- func (x *Azure) String() string
- type EncodingType
- func (EncodingType) Descriptor() protoreflect.EnumDescriptor
- func (x EncodingType) Enum() *EncodingType
- func (EncodingType) EnumDescriptor() ([]byte, []int)deprecated
- func (x EncodingType) Number() protoreflect.EnumNumber
- func (x EncodingType) String() string
- func (EncodingType) Type() protoreflect.EnumType
- type HostID
- func (*HostID) Descriptor() ([]byte, []int)deprecated
- func (x *HostID) GetAwsMetadata() *Aws
- func (x *HostID) GetAzAppServiceInstanceID() string
- func (x *HostID) GetAzureMetadata() *Azure
- func (x *HostID) GetDockerContainerID() string
- func (x *HostID) GetEc2AvailabilityZone() string
- func (x *HostID) GetEc2InstanceID() string
- func (x *HostID) GetHerokuDynoID() string
- func (x *HostID) GetHostType() HostType
- func (x *HostID) GetHostname() string
- func (x *HostID) GetIpAddresses() []string
- func (x *HostID) GetK8SMetadata() *K8S
- func (x *HostID) GetMacAddresses() []string
- func (x *HostID) GetPid() int32
- func (x *HostID) GetUamsClientID() string
- func (x *HostID) GetUuid() string
- func (*HostID) ProtoMessage()
- func (x *HostID) ProtoReflect() protoreflect.Message
- func (x *HostID) Reset()
- func (x *HostID) String() string
- type HostType
- type K8S
- type MessageRequest
- func (*MessageRequest) Descriptor() ([]byte, []int)deprecated
- func (x *MessageRequest) GetApiKey() string
- func (x *MessageRequest) GetEncoding() EncodingType
- func (x *MessageRequest) GetIdentity() *HostID
- func (x *MessageRequest) GetMessages() [][]byte
- func (*MessageRequest) ProtoMessage()
- func (x *MessageRequest) ProtoReflect() protoreflect.Message
- func (x *MessageRequest) Reset()
- func (x *MessageRequest) String() string
- type MessageResult
- func (*MessageResult) Descriptor() ([]byte, []int)deprecated
- func (x *MessageResult) GetArg() string
- func (x *MessageResult) GetResult() ResultCode
- func (x *MessageResult) GetWarning() string
- func (*MessageResult) ProtoMessage()
- func (x *MessageResult) ProtoReflect() protoreflect.Message
- func (x *MessageResult) Reset()
- func (x *MessageResult) String() string
- type OboeSetting
- func (*OboeSetting) Descriptor() ([]byte, []int)deprecated
- func (x *OboeSetting) GetArguments() map[string][]byte
- func (x *OboeSetting) GetFlags() []byte
- func (x *OboeSetting) GetLayer() []bytedeprecated
- func (x *OboeSetting) GetTimestamp() int64
- func (x *OboeSetting) GetTtl() int64
- func (x *OboeSetting) GetType() OboeSettingTypedeprecated
- func (x *OboeSetting) GetValue() int64
- func (*OboeSetting) ProtoMessage()
- func (x *OboeSetting) ProtoReflect() protoreflect.Message
- func (x *OboeSetting) Reset()
- func (x *OboeSetting) String() string
- type OboeSettingType
- func (OboeSettingType) Descriptor() protoreflect.EnumDescriptor
- func (x OboeSettingType) Enum() *OboeSettingType
- func (OboeSettingType) EnumDescriptor() ([]byte, []int)deprecated
- func (x OboeSettingType) Number() protoreflect.EnumNumber
- func (x OboeSettingType) String() string
- func (OboeSettingType) Type() protoreflect.EnumType
- type PingRequest
- type ResultCode
- type SettingsRequest
- func (*SettingsRequest) Descriptor() ([]byte, []int)deprecated
- func (x *SettingsRequest) GetApiKey() string
- func (x *SettingsRequest) GetClientVersion() string
- func (x *SettingsRequest) GetIdentity() *HostID
- func (*SettingsRequest) ProtoMessage()
- func (x *SettingsRequest) ProtoReflect() protoreflect.Message
- func (x *SettingsRequest) Reset()
- func (x *SettingsRequest) String() string
- type SettingsResult
- func (*SettingsResult) Descriptor() ([]byte, []int)deprecated
- func (x *SettingsResult) GetArg() string
- func (x *SettingsResult) GetResult() ResultCode
- func (x *SettingsResult) GetSettings() []*OboeSetting
- func (x *SettingsResult) GetWarning() string
- func (*SettingsResult) ProtoMessage()
- func (x *SettingsResult) ProtoReflect() protoreflect.Message
- func (x *SettingsResult) Reset()
- func (x *SettingsResult) String() string
- type TraceCollectorClient
- type TraceCollectorServer
- type UnimplementedTraceCollectorServer
- func (UnimplementedTraceCollectorServer) GetSettings(context.Context, *SettingsRequest) (*SettingsResult, error)
- func (UnimplementedTraceCollectorServer) Ping(context.Context, *PingRequest) (*MessageResult, error)
- func (UnimplementedTraceCollectorServer) PostEvents(context.Context, *MessageRequest) (*MessageResult, error)
- func (UnimplementedTraceCollectorServer) PostMetrics(context.Context, *MessageRequest) (*MessageResult, error)
- func (UnimplementedTraceCollectorServer) PostStatus(context.Context, *MessageRequest) (*MessageResult, error)
- type UnsafeTraceCollectorServer
Constants ¶
This section is empty.
Variables ¶
var ( ResultCode_name = map[int32]string{ 0: "OK", 1: "TRY_LATER", 2: "INVALID_API_KEY", 3: "LIMIT_EXCEEDED", 4: "REDIRECT", } ResultCode_value = map[string]int32{ "OK": 0, "TRY_LATER": 1, "INVALID_API_KEY": 2, "LIMIT_EXCEEDED": 3, "REDIRECT": 4, } )
Enum value maps for ResultCode.
var ( EncodingType_name = map[int32]string{ 0: "BSON", 1: "PROTOBUF", } EncodingType_value = map[string]int32{ "BSON": 0, "PROTOBUF": 1, } )
Enum value maps for EncodingType.
var ( HostType_name = map[int32]string{ 0: "PERSISTENT", 1: "AWS_LAMBDA", } HostType_value = map[string]int32{ "PERSISTENT": 0, "AWS_LAMBDA": 1, } )
Enum value maps for HostType.
var ( OboeSettingType_name = map[int32]string{ 0: "DEFAULT_SAMPLE_RATE", 1: "LAYER_SAMPLE_RATE", 2: "LAYER_APP_SAMPLE_RATE", 3: "LAYER_HTTPHOST_SAMPLE_RATE", 4: "CONFIG_STRING", 5: "CONFIG_INT", } OboeSettingType_value = map[string]int32{ "DEFAULT_SAMPLE_RATE": 0, "LAYER_SAMPLE_RATE": 1, "LAYER_APP_SAMPLE_RATE": 2, "LAYER_HTTPHOST_SAMPLE_RATE": 3, "CONFIG_STRING": 4, "CONFIG_INT": 5, } )
Enum value maps for OboeSettingType.
var File_collector_proto protoreflect.FileDescriptor
var TraceCollector_ServiceDesc = grpc.ServiceDesc{ ServiceName: "collector.TraceCollector", HandlerType: (*TraceCollectorServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "postEvents", Handler: _TraceCollector_PostEvents_Handler, }, { MethodName: "postMetrics", Handler: _TraceCollector_PostMetrics_Handler, }, { MethodName: "postStatus", Handler: _TraceCollector_PostStatus_Handler, }, { MethodName: "getSettings", Handler: _TraceCollector_GetSettings_Handler, }, { MethodName: "ping", Handler: _TraceCollector_Ping_Handler, }, }, Streams: []grpc.StreamDesc{}, Metadata: "collector.proto", }
TraceCollector_ServiceDesc is the grpc.ServiceDesc for TraceCollector service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
Functions ¶
func RegisterTraceCollectorServer ¶
func RegisterTraceCollectorServer(s grpc.ServiceRegistrar, srv TraceCollectorServer)
Types ¶
type Aws ¶
type Aws struct { CloudProvider string `protobuf:"bytes,1,opt,name=cloudProvider,proto3" json:"cloudProvider,omitempty"` // always `aws` CloudPlatform string `protobuf:"bytes,2,opt,name=cloudPlatform,proto3" json:"cloudPlatform,omitempty"` // always `aws_ec2` CloudAccountId string `protobuf:"bytes,3,opt,name=cloudAccountId,proto3" json:"cloudAccountId,omitempty"` // `accountId` in IMDS metadata CloudRegion string `protobuf:"bytes,4,opt,name=cloudRegion,proto3" json:"cloudRegion,omitempty"` // `region` in IMDS metadata CloudAvailabilityZone string `protobuf:"bytes,5,opt,name=cloudAvailabilityZone,proto3" json:"cloudAvailabilityZone,omitempty"` // `availabilityZone` in IMDS metadata HostId string `protobuf:"bytes,6,opt,name=hostId,proto3" json:"hostId,omitempty"` // `instanceId` in IMDS metadata HostImageId string `protobuf:"bytes,7,opt,name=hostImageId,proto3" json:"hostImageId,omitempty"` // `imageId` in IMDS metadata HostName string `protobuf:"bytes,8,opt,name=hostName,proto3" json:"hostName,omitempty"` // hostname from either [gethostname() in Linux](https://man7.org/linux/man-pages/man2/gethostname.2.html) or [gethostname() in Windows](https://learn.microsoft.com/en-us/windows/win32/api/winsock/nf-winsock-gethostname) HostType string `protobuf:"bytes,9,opt,name=hostType,proto3" json:"hostType,omitempty"` // `instanceType` in IMDS metadata // contains filtered or unexported fields }
* Represents AWS metadata from [Instance Metadata Service IMDS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html)
func (*Aws) Descriptor
deprecated
func (*Aws) GetCloudAccountId ¶
func (*Aws) GetCloudAvailabilityZone ¶
func (*Aws) GetCloudPlatform ¶
func (*Aws) GetCloudProvider ¶
func (*Aws) GetCloudRegion ¶
func (*Aws) GetHostImageId ¶
func (*Aws) GetHostName ¶
func (*Aws) GetHostType ¶
func (*Aws) ProtoMessage ¶
func (*Aws) ProtoMessage()
func (*Aws) ProtoReflect ¶
func (x *Aws) ProtoReflect() protoreflect.Message
type Azure ¶
type Azure struct { CloudProvider string `protobuf:"bytes,1,opt,name=cloudProvider,proto3" json:"cloudProvider,omitempty"` // always `azure` CloudPlatform string `protobuf:"bytes,2,opt,name=cloudPlatform,proto3" json:"cloudPlatform,omitempty"` // always `azure_vm` CloudRegion string `protobuf:"bytes,3,opt,name=cloudRegion,proto3" json:"cloudRegion,omitempty"` // `location` in IMDS metadata CloudAccountId string `protobuf:"bytes,4,opt,name=cloudAccountId,proto3" json:"cloudAccountId,omitempty"` // `subscriptionId` in IMDS metadata HostId string `protobuf:"bytes,5,opt,name=hostId,proto3" json:"hostId,omitempty"` // `vmId` in IMDS metadata HostName string `protobuf:"bytes,6,opt,name=hostName,proto3" json:"hostName,omitempty"` // `name` in IMDS metadata AzureVmName string `protobuf:"bytes,7,opt,name=azureVmName,proto3" json:"azureVmName,omitempty"` // `name` in IMDS metadata AzureVmSize string `protobuf:"bytes,8,opt,name=azureVmSize,proto3" json:"azureVmSize,omitempty"` // `vmSize` in IMDS metadata AzureVmScaleSetName string `protobuf:"bytes,9,opt,name=azureVmScaleSetName,proto3" json:"azureVmScaleSetName,omitempty"` // `vmScaleSetName` in IMDS metadata AzureResourceGroupName string `protobuf:"bytes,10,opt,name=azureResourceGroupName,proto3" json:"azureResourceGroupName,omitempty"` // `resourceGroupName` in IMDS metadata // contains filtered or unexported fields }
* Represents Azure metadata from [Instance Metadata Service IMDS](https://learn.microsoft.com/en-us/azure/virtual-machines/instance-metadata-service?tabs=linux)
func (*Azure) Descriptor
deprecated
func (*Azure) GetAzureResourceGroupName ¶
func (*Azure) GetAzureVmName ¶
func (*Azure) GetAzureVmScaleSetName ¶
func (*Azure) GetAzureVmSize ¶
func (*Azure) GetCloudAccountId ¶
func (*Azure) GetCloudPlatform ¶
func (*Azure) GetCloudProvider ¶
func (*Azure) GetCloudRegion ¶
func (*Azure) GetHostName ¶
func (*Azure) ProtoMessage ¶
func (*Azure) ProtoMessage()
func (*Azure) ProtoReflect ¶
func (x *Azure) ProtoReflect() protoreflect.Message
type EncodingType ¶
type EncodingType int32
* Represents the encoding type of messages
const ( EncodingType_BSON EncodingType = 0 // binary JSON EncodingType_PROTOBUF EncodingType = 1 // obsolete )
func (EncodingType) Descriptor ¶
func (EncodingType) Descriptor() protoreflect.EnumDescriptor
func (EncodingType) Enum ¶
func (x EncodingType) Enum() *EncodingType
func (EncodingType) EnumDescriptor
deprecated
func (EncodingType) EnumDescriptor() ([]byte, []int)
Deprecated: Use EncodingType.Descriptor instead.
func (EncodingType) Number ¶
func (x EncodingType) Number() protoreflect.EnumNumber
func (EncodingType) String ¶
func (x EncodingType) String() string
func (EncodingType) Type ¶
func (EncodingType) Type() protoreflect.EnumType
type HostID ¶
type HostID struct { Hostname string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"` // hostname from either [gethostname() in Linux](https://man7.org/linux/man-pages/man2/gethostname.2.html) or [gethostname() in Windows](https://learn.microsoft.com/en-us/windows/win32/api/winsock/nf-winsock-gethostname). Java agent will not refresh hostname for now to avoid spawning excessive processes. IpAddresses []string `protobuf:"bytes,2,rep,name=ip_addresses,json=ipAddresses,proto3" json:"ip_addresses,omitempty"` // obsolete Uuid string `protobuf:"bytes,3,opt,name=uuid,proto3" json:"uuid,omitempty"` // [swo only] A random (version 4) UUID generated on application instance startup, analogous to the [OTel Resource attribute](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/resource/semantic_conventions/README.md#service) `service.instance.id`, e.g. `51fcbc02-670e-454f-84d1-124a500a2646`, `f620e874-ff3d-4f33-825d-cc4b12b2d005` Pid int32 `protobuf:"varint,4,opt,name=pid,proto3" json:"pid,omitempty"` // process id from either [getpid()](https://man7.org/linux/man-pages/man2/getpid.2.html) or [GetCurrentProcessId()](https://learn.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-getcurrentprocessid) Ec2InstanceID string `protobuf:"bytes,5,opt,name=ec2InstanceID,proto3" json:"ec2InstanceID,omitempty"` // `instanceId` in AWS EC2 IMDS metadata Ec2AvailabilityZone string `protobuf:"bytes,6,opt,name=ec2AvailabilityZone,proto3" json:"ec2AvailabilityZone,omitempty"` // `availabilityZone` in AWS EC2 IMDS metadata DockerContainerID string `protobuf:"bytes,7,opt,name=dockerContainerID,proto3" json:"dockerContainerID,omitempty"` // container id from `/proc/self/cgroup` for cgroups v1 MacAddresses []string `protobuf:"bytes,8,rep,name=macAddresses,proto3" json:"macAddresses,omitempty"` // mac addresses for physical interfaces, skipping point-to-point and interfaces w/o IP address from either [getifaddrs(...)](https://man7.org/linux/man-pages/man3/getifaddrs.3.html) or [GetAdaptersAddresses(...)](https://learn.microsoft.com/en-us/windows/win32/api/iphlpapi/nf-iphlpapi-getadaptersaddresses) HerokuDynoID string `protobuf:"bytes,9,opt,name=herokuDynoID,proto3" json:"herokuDynoID,omitempty"` // [heroku dyno id](https://devcenter.heroku.com/articles/dynos#local-environment-variables) from environment variable `DYNO` AzAppServiceInstanceID string `protobuf:"bytes,10,opt,name=azAppServiceInstanceID,proto3" json:"azAppServiceInstanceID,omitempty"` // Azure App Service `WEBSITE_INSTANCE_ID` which is the [unique ID of the current VM instance](https://learn.microsoft.com/en-us/azure/app-service/reference-app-settings?tabs=kudu%2Cdotnet#scaling) HostType HostType `protobuf:"varint,11,opt,name=hostType,proto3,enum=collector.HostType" json:"hostType,omitempty"` // host type struct UamsClientID string `protobuf:"bytes,12,opt,name=uamsClientID,proto3" json:"uamsClientID,omitempty"` // [swo only] [uamsclientid](https://swicloud.atlassian.net/wiki/spaces/arch/pages/2963917281/FAS+-+Universal+AMS+Client+-+Unique+Identification) exposed to the APM library for [Service-to-Host correlation](https://swicloud.atlassian.net/wiki/spaces/NIT/pages/2858778658/FAS+Topology+Map+Data+-+UAMS+APM+on-prem#UAMS-Client-Id-management). It is read from `/opt/solarwinds/uamsclient/var/uamsclientid` or `C:\ProgramData\SolarWinds\UAMSClient\uamsclientid`. Windows path may be different depending on the setup. If not found, it is retrieved from `http://127.0.0.1:2113/info/uamsclient` uamsclient_id property AwsMetadata *Aws `protobuf:"bytes,13,opt,name=awsMetadata,proto3" json:"awsMetadata,omitempty"` // [swo only] aws ec2 metadata from IMDS AzureMetadata *Azure `protobuf:"bytes,14,opt,name=azureMetadata,proto3" json:"azureMetadata,omitempty"` // [swo only] azure metadata from IMDS K8SMetadata *K8S `protobuf:"bytes,15,opt,name=k8sMetadata,proto3" json:"k8sMetadata,omitempty"` // [swo only] k8s metadata // contains filtered or unexported fields }
* Represents the host metadata needed to infer entity and make correlations from trace telemetry.
func (*HostID) Descriptor
deprecated
func (*HostID) GetAwsMetadata ¶
func (*HostID) GetAzAppServiceInstanceID ¶
func (*HostID) GetAzureMetadata ¶
func (*HostID) GetDockerContainerID ¶
func (*HostID) GetEc2AvailabilityZone ¶
func (*HostID) GetEc2InstanceID ¶
func (*HostID) GetHerokuDynoID ¶
func (*HostID) GetHostType ¶
func (*HostID) GetHostname ¶
func (*HostID) GetIpAddresses ¶
func (*HostID) GetK8SMetadata ¶
func (*HostID) GetMacAddresses ¶
func (*HostID) GetUamsClientID ¶
func (*HostID) ProtoMessage ¶
func (*HostID) ProtoMessage()
func (*HostID) ProtoReflect ¶
func (x *HostID) ProtoReflect() protoreflect.Message
type HostType ¶
type HostType int32
* Represents the host type the APM library is running in.
func (HostType) Descriptor ¶
func (HostType) Descriptor() protoreflect.EnumDescriptor
func (HostType) EnumDescriptor
deprecated
func (HostType) Number ¶
func (x HostType) Number() protoreflect.EnumNumber
func (HostType) Type ¶
func (HostType) Type() protoreflect.EnumType
type K8S ¶
type K8S struct { Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"` // equivalent to [k8s.namespace.name](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/resource/semantic_conventions/k8s.md#namespace). The content from `/run/secrets/kubernetes.io/serviceaccount/namespace` PodName string `protobuf:"bytes,2,opt,name=podName,proto3" json:"podName,omitempty"` // equivalent to [k8s.pod.name](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/resource/semantic_conventions/k8s.md#pod). hostname from `gethostname()` function call PodUid string `protobuf:"bytes,3,opt,name=podUid,proto3" json:"podUid,omitempty"` // equivalent to [k8s.pod.uid](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/resource/semantic_conventions/k8s.md#pod). Parsed from `/proc/self/mountinfo` using best effort // contains filtered or unexported fields }
* Represents k8s metadata
func (*K8S) Descriptor
deprecated
func (*K8S) GetNamespace ¶
func (*K8S) GetPodName ¶
func (*K8S) ProtoMessage ¶
func (*K8S) ProtoMessage()
func (*K8S) ProtoReflect ¶
func (x *K8S) ProtoReflect() protoreflect.Message
type MessageRequest ¶
type MessageRequest struct { ApiKey string `protobuf:"bytes,1,opt,name=api_key,json=apiKey,proto3" json:"api_key,omitempty"` // the Service Key provided by the customer to authenticate and identify the tenant and service the message is destined for. It is a string composed of two parts, an API token and a descriptive service name, separated by a colon `:`. Example: `qwertyuiop1234567:my_cool_service`. Messages [][]byte `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages,omitempty"` // bson messages Encoding EncodingType `protobuf:"varint,3,opt,name=encoding,proto3,enum=collector.EncodingType" json:"encoding,omitempty"` // always `EncodingType::BSON` Identity *HostID `protobuf:"bytes,4,opt,name=identity,proto3" json:"identity,omitempty"` // host id // contains filtered or unexported fields }
* Represents the message request
func (*MessageRequest) Descriptor
deprecated
func (*MessageRequest) Descriptor() ([]byte, []int)
Deprecated: Use MessageRequest.ProtoReflect.Descriptor instead.
func (*MessageRequest) GetApiKey ¶
func (x *MessageRequest) GetApiKey() string
func (*MessageRequest) GetEncoding ¶
func (x *MessageRequest) GetEncoding() EncodingType
func (*MessageRequest) GetIdentity ¶
func (x *MessageRequest) GetIdentity() *HostID
func (*MessageRequest) GetMessages ¶
func (x *MessageRequest) GetMessages() [][]byte
func (*MessageRequest) ProtoMessage ¶
func (*MessageRequest) ProtoMessage()
func (*MessageRequest) ProtoReflect ¶
func (x *MessageRequest) ProtoReflect() protoreflect.Message
func (*MessageRequest) Reset ¶
func (x *MessageRequest) Reset()
func (*MessageRequest) String ¶
func (x *MessageRequest) String() string
type MessageResult ¶
type MessageResult struct { Result ResultCode `protobuf:"varint,1,opt,name=result,proto3,enum=collector.ResultCode" json:"result,omitempty"` // result code from the collector Arg string `protobuf:"bytes,2,opt,name=arg,proto3" json:"arg,omitempty"` // obsolete Warning string `protobuf:"bytes,4,opt,name=warning,proto3" json:"warning,omitempty"` // user-facing warning message. The APM library attempts to squelch repeated warnings, so care should be taken to ensure that warning messages are consistent across all RPCs. // contains filtered or unexported fields }
* Represents the message results
func (*MessageResult) Descriptor
deprecated
func (*MessageResult) Descriptor() ([]byte, []int)
Deprecated: Use MessageResult.ProtoReflect.Descriptor instead.
func (*MessageResult) GetArg ¶
func (x *MessageResult) GetArg() string
func (*MessageResult) GetResult ¶
func (x *MessageResult) GetResult() ResultCode
func (*MessageResult) GetWarning ¶
func (x *MessageResult) GetWarning() string
func (*MessageResult) ProtoMessage ¶
func (*MessageResult) ProtoMessage()
func (*MessageResult) ProtoReflect ¶
func (x *MessageResult) ProtoReflect() protoreflect.Message
func (*MessageResult) Reset ¶
func (x *MessageResult) Reset()
func (*MessageResult) String ¶
func (x *MessageResult) String() string
type OboeSetting ¶
type OboeSetting struct { // Deprecated: Do not use. Type OboeSettingType `protobuf:"varint,1,opt,name=type,proto3,enum=collector.OboeSettingType" json:"type,omitempty"` // oboe setting type struct, always DEFAULT_SAMPLE_RATE Flags []byte `protobuf:"bytes,2,opt,name=flags,proto3" json:"flags,omitempty"` // flags where { OK=0x0, INVALID=0x1, OVERRIDE=0x2, SAMPLE_START=0x4, SAMPLE_THROUGH=0x8, SAMPLE_THROUGH_ALWAYS=0x10, TRIGGERED_TRACE=0x20 }. e.g. 54 means OK or OVERRIDE or SAMPLE_START or SAMPLE_THROUGH_ALWAYS or TRIGGERED_TRACE Timestamp int64 `protobuf:"varint,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"` // Epoch timestamp Value int64 `protobuf:"varint,4,opt,name=value,proto3" json:"value,omitempty"` // Sampling rate, 1000000 means 100% // Deprecated: Do not use. Layer []byte `protobuf:"bytes,5,opt,name=layer,proto3" json:"layer,omitempty"` // layer name, not set since type is always DEFAULT_SAMPLE_RATE Arguments map[string][]byte `` // key-value pairs. Keys can be [`BucketCapacity`, `BucketRate`, `TriggerRelaxedBucketCapacity`, `TriggerRelaxedBucketRate`, `TriggerStrictBucketCapacity`, `TriggerStrictBucketRate`, `SignatureKey`] /* 159-byte string literal not displayed */ Ttl int64 `protobuf:"varint,8,opt,name=ttl,proto3" json:"ttl,omitempty"` // time to live for this setting struct, in seconds // contains filtered or unexported fields }
* Represents oboe setting message
func (*OboeSetting) Descriptor
deprecated
func (*OboeSetting) Descriptor() ([]byte, []int)
Deprecated: Use OboeSetting.ProtoReflect.Descriptor instead.
func (*OboeSetting) GetArguments ¶
func (x *OboeSetting) GetArguments() map[string][]byte
func (*OboeSetting) GetFlags ¶
func (x *OboeSetting) GetFlags() []byte
func (*OboeSetting) GetLayer
deprecated
func (x *OboeSetting) GetLayer() []byte
Deprecated: Do not use.
func (*OboeSetting) GetTimestamp ¶
func (x *OboeSetting) GetTimestamp() int64
func (*OboeSetting) GetTtl ¶
func (x *OboeSetting) GetTtl() int64
func (*OboeSetting) GetType
deprecated
func (x *OboeSetting) GetType() OboeSettingType
Deprecated: Do not use.
func (*OboeSetting) GetValue ¶
func (x *OboeSetting) GetValue() int64
func (*OboeSetting) ProtoMessage ¶
func (*OboeSetting) ProtoMessage()
func (*OboeSetting) ProtoReflect ¶
func (x *OboeSetting) ProtoReflect() protoreflect.Message
func (*OboeSetting) Reset ¶
func (x *OboeSetting) Reset()
func (*OboeSetting) String ¶
func (x *OboeSetting) String() string
type OboeSettingType ¶
type OboeSettingType int32
* Represents oboe setting type
const ( OboeSettingType_DEFAULT_SAMPLE_RATE OboeSettingType = 0 // DEFAULT_SAMPLE_RATE OboeSettingType_LAYER_SAMPLE_RATE OboeSettingType = 1 // obsolete OboeSettingType_LAYER_APP_SAMPLE_RATE OboeSettingType = 2 // obsolete OboeSettingType_LAYER_HTTPHOST_SAMPLE_RATE OboeSettingType = 3 // obsolete OboeSettingType_CONFIG_STRING OboeSettingType = 4 // obsolete OboeSettingType_CONFIG_INT OboeSettingType = 5 // obsolete )
func (OboeSettingType) Descriptor ¶
func (OboeSettingType) Descriptor() protoreflect.EnumDescriptor
func (OboeSettingType) Enum ¶
func (x OboeSettingType) Enum() *OboeSettingType
func (OboeSettingType) EnumDescriptor
deprecated
func (OboeSettingType) EnumDescriptor() ([]byte, []int)
Deprecated: Use OboeSettingType.Descriptor instead.
func (OboeSettingType) Number ¶
func (x OboeSettingType) Number() protoreflect.EnumNumber
func (OboeSettingType) String ¶
func (x OboeSettingType) String() string
func (OboeSettingType) Type ¶
func (OboeSettingType) Type() protoreflect.EnumType
type PingRequest ¶
type PingRequest struct { ApiKey string `protobuf:"bytes,1,opt,name=api_key,json=apiKey,proto3" json:"api_key,omitempty"` // the Service Key provided by the customer to authenticate and identify the tenant and service the message is destined for. It is a string composed of two parts, an API token and a descriptive service name, separated by a colon `:`. Example: `qwertyuiop1234567:my_cool_service`. // contains filtered or unexported fields }
* Represents the ping request
func (*PingRequest) Descriptor
deprecated
func (*PingRequest) Descriptor() ([]byte, []int)
Deprecated: Use PingRequest.ProtoReflect.Descriptor instead.
func (*PingRequest) GetApiKey ¶
func (x *PingRequest) GetApiKey() string
func (*PingRequest) ProtoMessage ¶
func (*PingRequest) ProtoMessage()
func (*PingRequest) ProtoReflect ¶
func (x *PingRequest) ProtoReflect() protoreflect.Message
func (*PingRequest) Reset ¶
func (x *PingRequest) Reset()
func (*PingRequest) String ¶
func (x *PingRequest) String() string
type ResultCode ¶
type ResultCode int32
* Represents the result code from collector
const ( ResultCode_OK ResultCode = 0 // means OK ResultCode_TRY_LATER ResultCode = 1 // APM library will retry the request later ResultCode_INVALID_API_KEY ResultCode = 2 // obsolete, removed handling in this [PR](https://github.com/librato/oboe/pull/720) ResultCode_LIMIT_EXCEEDED ResultCode = 3 // APM library will retry the request later ResultCode_REDIRECT ResultCode = 4 // obsolete, removed handling in this [PR](https://github.com/librato/oboe/pull/720) )
func (ResultCode) Descriptor ¶
func (ResultCode) Descriptor() protoreflect.EnumDescriptor
func (ResultCode) Enum ¶
func (x ResultCode) Enum() *ResultCode
func (ResultCode) EnumDescriptor
deprecated
func (ResultCode) EnumDescriptor() ([]byte, []int)
Deprecated: Use ResultCode.Descriptor instead.
func (ResultCode) Number ¶
func (x ResultCode) Number() protoreflect.EnumNumber
func (ResultCode) String ¶
func (x ResultCode) String() string
func (ResultCode) Type ¶
func (ResultCode) Type() protoreflect.EnumType
type SettingsRequest ¶
type SettingsRequest struct { ApiKey string `protobuf:"bytes,1,opt,name=api_key,json=apiKey,proto3" json:"api_key,omitempty"` // the Service Key provided by the customer to authenticate and identify the tenant and service the message is destined for. It is a string composed of two parts, an API token and a descriptive service name, separated by a colon `:`. Example: `qwertyuiop1234567:my_cool_service`. Identity *HostID `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` // host id, only the `hostname` field needs to be set, all the other fields should be left empty. ClientVersion string `protobuf:"bytes,3,opt,name=clientVersion,proto3" json:"clientVersion,omitempty"` // always `2` // contains filtered or unexported fields }
* Represents the settings request
func (*SettingsRequest) Descriptor
deprecated
func (*SettingsRequest) Descriptor() ([]byte, []int)
Deprecated: Use SettingsRequest.ProtoReflect.Descriptor instead.
func (*SettingsRequest) GetApiKey ¶
func (x *SettingsRequest) GetApiKey() string
func (*SettingsRequest) GetClientVersion ¶
func (x *SettingsRequest) GetClientVersion() string
func (*SettingsRequest) GetIdentity ¶
func (x *SettingsRequest) GetIdentity() *HostID
func (*SettingsRequest) ProtoMessage ¶
func (*SettingsRequest) ProtoMessage()
func (*SettingsRequest) ProtoReflect ¶
func (x *SettingsRequest) ProtoReflect() protoreflect.Message
func (*SettingsRequest) Reset ¶
func (x *SettingsRequest) Reset()
func (*SettingsRequest) String ¶
func (x *SettingsRequest) String() string
type SettingsResult ¶
type SettingsResult struct { Result ResultCode `protobuf:"varint,1,opt,name=result,proto3,enum=collector.ResultCode" json:"result,omitempty"` // result code from the collector Arg string `protobuf:"bytes,2,opt,name=arg,proto3" json:"arg,omitempty"` // obsolete Settings []*OboeSetting `protobuf:"bytes,3,rep,name=settings,proto3" json:"settings,omitempty"` // sampling settings Warning string `protobuf:"bytes,4,opt,name=warning,proto3" json:"warning,omitempty"` // user-facing warning message. The APM library attempts to squelch repeated warnings, so care should be taken to ensure that warning messages are consistent across all RPCs. // contains filtered or unexported fields }
* Represents the settings result
func (*SettingsResult) Descriptor
deprecated
func (*SettingsResult) Descriptor() ([]byte, []int)
Deprecated: Use SettingsResult.ProtoReflect.Descriptor instead.
func (*SettingsResult) GetArg ¶
func (x *SettingsResult) GetArg() string
func (*SettingsResult) GetResult ¶
func (x *SettingsResult) GetResult() ResultCode
func (*SettingsResult) GetSettings ¶
func (x *SettingsResult) GetSettings() []*OboeSetting
func (*SettingsResult) GetWarning ¶
func (x *SettingsResult) GetWarning() string
func (*SettingsResult) ProtoMessage ¶
func (*SettingsResult) ProtoMessage()
func (*SettingsResult) ProtoReflect ¶
func (x *SettingsResult) ProtoReflect() protoreflect.Message
func (*SettingsResult) Reset ¶
func (x *SettingsResult) Reset()
func (*SettingsResult) String ¶
func (x *SettingsResult) String() string
type TraceCollectorClient ¶
type TraceCollectorClient interface { // post events (traces) to collector. PostEvents(ctx context.Context, in *MessageRequest, opts ...grpc.CallOption) (*MessageResult, error) // post metrics (internal heartbeats, request counters, summary, runtime or custom metrics) to collector PostMetrics(ctx context.Context, in *MessageRequest, opts ...grpc.CallOption) (*MessageResult, error) // post [__Init](https://github.com/librato/trace/blob/master/docs/specs/KV/init.md) message to collector. May be used by APM library to validate api_key. PostStatus(ctx context.Context, in *MessageRequest, opts ...grpc.CallOption) (*MessageResult, error) // get sampling and other settings for this connection. Note the SettingsRequest requirement for HostID fields. May be used by APM library to validate api_key. GetSettings(ctx context.Context, in *SettingsRequest, opts ...grpc.CallOption) (*SettingsResult, error) // ping is used for keep-alive purpose. The APM library is expected to ping the collector if the connection has been idled for 20 seconds (by default). Take note that keep-alive should only be performed if the connection was previously healthy - last API call gave a response Ping(ctx context.Context, in *PingRequest, opts ...grpc.CallOption) (*MessageResult, error) }
TraceCollectorClient is the client API for TraceCollector service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
func NewTraceCollectorClient ¶
func NewTraceCollectorClient(cc grpc.ClientConnInterface) TraceCollectorClient
type TraceCollectorServer ¶
type TraceCollectorServer interface { // post events (traces) to collector. PostEvents(context.Context, *MessageRequest) (*MessageResult, error) // post metrics (internal heartbeats, request counters, summary, runtime or custom metrics) to collector PostMetrics(context.Context, *MessageRequest) (*MessageResult, error) // post [__Init](https://github.com/librato/trace/blob/master/docs/specs/KV/init.md) message to collector. May be used by APM library to validate api_key. PostStatus(context.Context, *MessageRequest) (*MessageResult, error) // get sampling and other settings for this connection. Note the SettingsRequest requirement for HostID fields. May be used by APM library to validate api_key. GetSettings(context.Context, *SettingsRequest) (*SettingsResult, error) // ping is used for keep-alive purpose. The APM library is expected to ping the collector if the connection has been idled for 20 seconds (by default). Take note that keep-alive should only be performed if the connection was previously healthy - last API call gave a response Ping(context.Context, *PingRequest) (*MessageResult, error) }
TraceCollectorServer is the server API for TraceCollector service. All implementations should embed UnimplementedTraceCollectorServer for forward compatibility
type UnimplementedTraceCollectorServer ¶
type UnimplementedTraceCollectorServer struct { }
UnimplementedTraceCollectorServer should be embedded to have forward compatible implementations.
func (UnimplementedTraceCollectorServer) GetSettings ¶
func (UnimplementedTraceCollectorServer) GetSettings(context.Context, *SettingsRequest) (*SettingsResult, error)
func (UnimplementedTraceCollectorServer) Ping ¶
func (UnimplementedTraceCollectorServer) Ping(context.Context, *PingRequest) (*MessageResult, error)
func (UnimplementedTraceCollectorServer) PostEvents ¶
func (UnimplementedTraceCollectorServer) PostEvents(context.Context, *MessageRequest) (*MessageResult, error)
func (UnimplementedTraceCollectorServer) PostMetrics ¶
func (UnimplementedTraceCollectorServer) PostMetrics(context.Context, *MessageRequest) (*MessageResult, error)
func (UnimplementedTraceCollectorServer) PostStatus ¶
func (UnimplementedTraceCollectorServer) PostStatus(context.Context, *MessageRequest) (*MessageResult, error)
type UnsafeTraceCollectorServer ¶
type UnsafeTraceCollectorServer interface {
// contains filtered or unexported methods
}
UnsafeTraceCollectorServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to TraceCollectorServer will result in compilation errors.