package skywalking.v3

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

service BrowserPerfService

BrowserPerf.proto:31

Collect performance raw data from browser.

service CLRMetricReportService

CLRMetric.proto:31

service ConfigurationDiscoveryService

ConfigurationDiscoveryService.proto:31

Fetch the latest dynamic configurations of the service.

service ContinuousProfilingService

Continuous.proto:29

service EBPFAccessLogService

accesslog.proto:29

service EBPFProcessService

Process.proto:31

Define the detected processes and report them.

service EBPFProfilingService

Profile.proto:30

Define the Rover Process profiling task and upload profiling data.

service EventService

Event.proto:30

service JVMMetricReportService

JVMMetric.proto:32

Define the JVM metrics report service.

service LogReportService

Logging.proto:32

Report collected logs into the OAP backend

service ManagementService

Management.proto:32

Define the service reporting the extra information of the instance.

service MeterReportService

Meter.proto:29

service ProfileTask

Profile.proto:30

service ServiceMeshMetricService

service-mesh.proto:31

Define metrics report service. The metrics format is typically representing the data model collected in the service mesh case.

service SpanAttachedEventReportService

Tracing.proto:233

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ebpf agent(SkyWalking Rover) collects extra information from the OS(Linux Only) level to attach on the traced span. Since v3.1 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

service TraceSegmentReportService

Tracing.proto:33

Define a trace segment report service. All language agents or any trace collecting component, could use this service to send span collection to the SkyWalking OAP backend.

message AccessLogConnection

accesslog.proto:72

Connection information

Used in: EBPFAccessLogMessage

enum AccessLogConnectionTLSMode

accesslog.proto:135

Used in: AccessLogConnection

message AccessLogHTTPProtocol

accesslog.proto:156

Used in: AccessLogProtocolLogs

message AccessLogHTTPProtocolRequest

accesslog.proto:171

Used in: AccessLogHTTPProtocol

enum AccessLogHTTPProtocolRequestMethod

accesslog.proto:212

Used in: AccessLogHTTPProtocolRequest

message AccessLogHTTPProtocolResponse

accesslog.proto:184

Used in: AccessLogHTTPProtocol

enum AccessLogHTTPProtocolVersion

accesslog.proto:166

Used in: AccessLogHTTPProtocol

message AccessLogKernelAcceptOperation

accesslog.proto:233

Used in: AccessLogKernelLog

message AccessLogKernelCloseOperation

accesslog.proto:240

Used in: AccessLogKernelLog

message AccessLogKernelConnectOperation

accesslog.proto:224

Used in: AccessLogKernelLog

message AccessLogKernelLog

accesslog.proto:140

Used in: EBPFAccessLogMessage

message AccessLogKernelReadL2Metrics

accesslog.proto:323

Used in: AccessLogKernelReadOperation

message AccessLogKernelReadL3Metrics

accesslog.proto:336

Used in: AccessLogKernelReadOperation

message AccessLogKernelReadL4Metrics

accesslog.proto:347

Used in: AccessLogKernelReadOperation

message AccessLogKernelReadOperation

accesslog.proto:309

Used in: AccessLogKernelLog

enum AccessLogKernelReadSyscall

accesslog.proto:362

Used in: AccessLogKernelReadOperation

message AccessLogKernelWriteL2Metrics

accesslog.proto:296

Used in: AccessLogKernelWriteOperation

message AccessLogKernelWriteL3Metrics

accesslog.proto:281

Used in: AccessLogKernelWriteOperation

message AccessLogKernelWriteL4Metrics

accesslog.proto:263

Used in: AccessLogKernelWriteOperation

message AccessLogKernelWriteOperation

accesslog.proto:249

Used in: AccessLogKernelLog

enum AccessLogKernelWriteSyscall

accesslog.proto:351

Used in: AccessLogKernelWriteOperation

message AccessLogLossPackageMetrics

accesslog.proto:276

Used in: AccessLogKernelWriteL4Metrics

message AccessLogProtocolLogs

accesslog.proto:150

Used in: EBPFAccessLogMessage

enum AccessLogProtocolType

accesslog.proto:371

Used in: AccessLogConnection

message AccessLogTraceInfo

accesslog.proto:191

Used in: AccessLogHTTPProtocolRequest

enum AccessLogTraceInfoProvider

accesslog.proto:207

Used in: AccessLogTraceInfo

message BrowserErrorLog

BrowserPerf.proto:93

Used as request type in: BrowserPerfService.collectErrorLogs, BrowserPerfService.collectErrorLogs

message BrowserPerfData

BrowserPerf.proto:54

Used as request type in: BrowserPerfService.collectPerfData, BrowserPerfService.collectPerfData

message CLRMetric

CLRMetric.proto:42

Used in: CLRMetricCollection

message CLRMetricCollection

CLRMetric.proto:36

Used as request type in: CLRMetricReportService.collect, CLRMetricReportService.collect

message CPU

Common.proto:40

Used in: CLRMetric, JVMMetric

message Class

JVMMetric.proto:107

See: https://docs.oracle.com/javase/8/docs/api/java/lang/management/ClassLoadingMXBean.html

Used in: JVMMetric

message ClrGC

CLRMetric.proto:49

Used in: CLRMetric

message ClrThread

CLRMetric.proto:56

Used in: CLRMetric

message Command

Command.proto:99

Command represents an protocol customized data when return. When the agent communicates with the OAP side using gRPC, the OAP uses Command to return the data content to the Agent. The available commands are, Name: ConfigurationDiscoveryCommand Args: SerialNumber: String UUID: String properties: Key-value pairs rely on agent-side implementations Ref, Java agent supported configurations, https://skywalking.apache.org/docs/skywalking-java/next/en/setup/service-agent/java-agent/configuration-discovery/ Name: ProfileTaskQuery Args: SerialNumber: String TaskId: String EndpointName: String Duration: Integer MinDurationThreshold: Integer DumpPeriod: Integer MaxSamplingCount: Integer StartTime: Date Timestamp CreateTime: Date Timestamp Name: EBPFProfilingTaskQuery Args: TaskId: String ProcessId: Integer List TaskUpdateTime: Date timestamp TriggerType: Enum, value = FIXED_TIME TargetType: Enum, value = ON_CPU, OFF_CPU or NETWORK TaskStartTime: Date Timestamp ExtensionConfigJSON: JSON serialization of NetworkSamplings. --- NetworkSamplings --- NetworkSamplings: List URIRegex: String MinDuration: Integer When4xx: Boolean When5xx: Boolean Settings: Object RequireCompleteRequest: Boolean MaxRequestSize: Integer RequireCompleteResponse: Boolean MaxResponseSize: Integer ------------------------ FixedTriggerDuration: Long Name: ContinuousProfilingPolicyQuery Args: ServiceWithPolicyJSON: List JSON serialization of ServiceWithPolicy. --- ServiceWithPolicy --- ServiceName: String UUID: String Profiling: Multiple profiling configuration. Map Key: Profiling type. Enum, value = ON_CPU, OFF_CPU, NETWORK Value: Profiling policies. Map Key: Monitoring type. Enum, value = PROCESS_CPU, PROCESS_THREAD_COUNT, SYSTEM_LOAD, HTTP_ERROR_RATE, HTTP_AVG_RESPONSE_TIME Value: Policy configuration. Object. Threshold: String Period(s): Integer Count: Integer URIList: List<String> URIRegex: String --------------------------- Name: ContinuousProfilingReportTask Args: TaskId: String

Used in: Commands

message Commands

Command.proto:112

Transferring multiple Command in agent and OAP.

Used as response type in: BrowserPerfService.collectErrorLogs, BrowserPerfService.collectPerfData, CLRMetricReportService.collect, JVMMetricReportService.collect, ManagementService.keepAlive, ManagementService.reportInstanceProperties, MeterReportService.collect, ProfileTask.collectSnapshot, ProfileTask.getProfileTaskCommands, ProfileTask.reportTaskFinish, TraceSegmentReportService.collect, TraceSegmentReportService.collectInSync, v10.AsyncProfilerTask.getAsyncProfilerTaskCommands, BrowserPerfService.collectErrorLogs, BrowserPerfService.collectPerfData, BrowserPerfService.collectResourcePerfData, BrowserPerfService.collectWebInteractionsPerfData, BrowserPerfService.collectWebVitalsPerfData, CLRMetricReportService.collect, ConfigurationDiscoveryService.fetchConfigurations, ContinuousProfilingService.queryPolicies, ContinuousProfilingService.reportProfilingTask, EBPFProcessService.keepAlive, EBPFProfilingService.collectProfilingData, EBPFProfilingService.queryTasks, EventService.collect, JVMMetricReportService.collect, LogReportService.collect, ManagementService.keepAlive, ManagementService.reportInstanceProperties, MeterReportService.collect, MeterReportService.collectBatch, ProfileTask.collectSnapshot, ProfileTask.getProfileTaskCommands, ProfileTask.reportTaskFinish, SpanAttachedEventReportService.collect, TraceSegmentReportService.collect, TraceSegmentReportService.collectInSync

message ConnectionAddress

accesslog.proto:113

Used in: AccessLogConnection

message ConnectionAttachment

accesslog.proto:87

Used in: AccessLogConnection

message ContinuousNetworkProfilingTask

Continuous.proto:121

eBPF Network profiling task

Used in: ContinuousProfilingReport

message ContinuousOffCPUProfilingTask

Continuous.proto:117

eBPF off CPU profiling task

Used in: ContinuousProfilingReport

(message has no fields)

message ContinuousOnCPUProfilingTask

Continuous.proto:113

eBPF on CPU profiling task

Used in: ContinuousProfilingReport

(message has no fields)

message ContinuousProfilingCause

Continuous.proto:74

Used in: ContinuousProfilingReport

message ContinuousProfilingServicePolicyQuery

Continuous.proto:45

Used in: ContinuousProfilingPolicyQuery

message ContinuousProfilingSingleValueCause

Continuous.proto:98

Used in: ContinuousProfilingCause

enum ContinuousProfilingTriggeredMonitorType

Continuous.proto:82

Used in: ContinuousProfilingCause

message ContinuousProfilingURICause

Continuous.proto:103

Used in: ContinuousProfilingCause

enum DetectPoint

Common.proto:47

In most cases, detect point should be `server` or `client`. Even in service mesh, this means `server`/`client` side sidecar `proxy` is reserved only.

Used in: AccessLogConnection, HTTPServiceMeshMetric, TCPServiceMeshMetric

message EBPFAccessLogNodeInfo

accesslog.proto:47

Used in: EBPFAccessLogMessage

message EBPFAccessLogNodeNetInterface

accesslog.proto:65

Used in: EBPFAccessLogNodeInfo

message EBPFAccessLogPolicy

accesslog.proto:60

Used in: EBPFAccessLogNodeInfo

message EBPFHostProcessDownstream

Process.proto:104

Used in: EBPFProcessDownstream

message EBPFHostProcessMetadata

Process.proto:55

Used in: EBPFProcessProperties

message EBPFKubernetesProcessDownstream

Process.proto:110

Kubernetes process downstream

Used in: EBPFProcessDownstream

message EBPFKubernetesProcessMetadata

Process.proto:80

Kubernetes process metadata

Used in: EBPFProcessProperties

message EBPFOffCPUProfiling

Profile.proto:90

Used in: EBPFProfilingData

message EBPFOffsetTimestamp

accesslog.proto:384

Get nanosecond through offset with node start instant

Used in: EBPFTimestamp

message EBPFOnCPUProfiling

Profile.proto:83

Used in: EBPFProfilingData

message EBPFProcessDownstream

Process.proto:94

Used in: EBPFReportProcessDownstream

message EBPFProcessEntityMetadata

Process.proto:66

Process Entity metadata

Used in: EBPFHostProcessDownstream, EBPFHostProcessMetadata, EBPFKubernetesProcessDownstream, EBPFKubernetesProcessMetadata, EBPFProcessPingPkg

message EBPFProcessPingPkg

Process.proto:121

Used in: EBPFProcessPingPkgList

message EBPFProcessProperties

Process.proto:47

Used in: EBPFProcessReportList

message EBPFProfilingStackMetadata

Profile.proto:69

Used in: EBPFOffCPUProfiling, EBPFOnCPUProfiling

enum EBPFProfilingStackType

Profile.proto:78

Used in: EBPFProfilingStackMetadata

message EBPFProfilingTaskMetadata

Profile.proto:58

Used in: EBPFProfilingData

message EBPFTimestamp

accesslog.proto:377

Used in: AccessLogHTTPProtocol, AccessLogKernelAcceptOperation, AccessLogKernelCloseOperation, AccessLogKernelConnectOperation, AccessLogKernelReadOperation, AccessLogKernelWriteOperation

enum ErrorCategory

BrowserPerf.proto:115

Used in: BrowserErrorLog

message GC

JVMMetric.proto:83

Used in: JVMMetric

enum GCPhase

JVMMetric.proto:89

Used in: GC

message HTTPServiceMeshMetric

service-mesh.proto:43

Used in: HTTPServiceMeshMetrics

message HTTPServiceMeshMetrics

service-mesh.proto:82

Used in: ServiceMeshMetrics

message ID

Tracing.proto:193

A ID could be represented by multiple string sections.

message IPAddress

accesslog.proto:130

Used in: ConnectionAddress

message InstancePingPkg

Management.proto:53

Used as request type in: ManagementService.keepAlive, ManagementService.keepAlive

message InstanceProperties

Management.proto:45

Used as request type in: ManagementService.reportInstanceProperties, ManagementService.reportInstanceProperties

message Instant

Common.proto:58

since v3.1 An instantaneous point on the time-line. An instant represents a data point accurate to the nanosecond. It is constituted by a long representing epoch-seconds and an int representing nanosecond-of-second, which will always be between 0 and 999,999,999

Used in: EBPFAccessLogNodeInfo, SpanAttachedEvent

message JSONLog

Logging.proto:93

JSON formatted log. The json field represents the string that could be formatted as a JSON object.

Used in: LogDataBody

message JVMMetric

JVMMetric.proto:43

Used in: JVMMetricCollection

message JVMMetricCollection

JVMMetric.proto:37

Used as request type in: JVMMetricReportService.collect, JVMMetricReportService.collect

message KeyIntValuePair

Common.proto:35

since v3.1 An extension of KeyStringValuePair represents a kind of metric value for the key.

Used in: SpanAttachedEvent

message KeyStringValuePair

Common.proto:28

Used in: Command, EBPFHostProcessMetadata, EBPFKubernetesProcessMetadata, EBPFProcessPingPkg, HTTPServiceMeshMetric, InstanceProperties, Log, LogTags, SpanAttachedEvent, SpanObject, TCPServiceMeshMetric

message KubernetesProcessAddress

accesslog.proto:122

Used in: ConnectionAddress

message Label

Meter.proto:43

Label of the meter

Used in: MeterHistogram, MeterSingleValue

message Log

Tracing.proto:174

Used in: SpanObject

message LogDataBody

Logging.proto:75

The content of the log data

Used in: LogData

message LogTags

Logging.proto:113

Used in: LogData

message Memory

JVMMetric.proto:53

Used in: JVMMetric

message MemoryPool

JVMMetric.proto:61

Used in: JVMMetric

message MeterBucketValue

Meter.proto:49

The histogram element definition. It includes the bucket lower boundary and the count in the bucket.

Used in: MeterHistogram

message MeterData

Meter.proto:80

Single meter data, if the same metrics have a different label, they will separate.

Used as request type in: MeterReportService.collect, MeterReportService.collect

Used as field type in: MeterDataCollection

message MeterHistogram

Meter.proto:70

Histogram

Used in: MeterData

message MeterSingleValue

Meter.proto:60

Meter single value

Used in: MeterData

enum PoolType

JVMMetric.proto:69

Used in: MemoryPool

message ProfileTaskCommandQuery

Profile.proto:46

Used as request type in: ProfileTask.getProfileTaskCommands, ProfileTask.getProfileTaskCommands

message ProfileTaskFinishReport

Profile.proto:75

profile task finished report

Used as request type in: ProfileTask.reportTaskFinish, ProfileTask.reportTaskFinish

enum Protocol

service-mesh.proto:128

Used in: HTTPServiceMeshMetric

enum RefType

Tracing.proto:198

Type of the reference

Used in: SegmentReference

message SegmentCollection

Tracing.proto:225

The segment collections for trace report in batch and sync mode.

Used as request type in: TraceSegmentReportService.collectInSync, TraceSegmentReportService.collectInSync

message SegmentObject

Tracing.proto:54

The segment is a collection of spans. It includes all collected spans in a simple one request context, such as a HTTP request process. We recommend the agent/SDK report all tracked data of one request once for all. Typically, such as in Java, one segment represent all tracked operations(spans) of one request context in the same thread. At the same time, in some language there is not a clear `thread` concept like golang. Then, it could represent all tracked operations of one request context cross threads/goroutines.

Used as request type in: TraceSegmentReportService.collect, TraceSegmentReportService.collect

Used as field type in: SegmentCollection

message SegmentReference

Tracing.proto:80

Segment reference represents the link between two existing segment.

Used in: SpanObject

message Source

Event.proto:82

If the event occurs on a service ONLY, the `service` field is mandatory, the serviceInstance field and endpoint field are optional; If the event occurs on a service instance, the `service` and `serviceInstance` are mandatory and endpoint is optional; If the event occurs on an endpoint, `service` and `endpoint` are mandatory, `serviceInstance` is optional;

Used in: Event

message SpanAttachedEvent.SpanReference

Tracing.proto:266

Used in: SpanAttachedEvent

enum SpanAttachedEvent.SpanReferenceType

Tracing.proto:282

Used in: SpanReference

enum SpanLayer

Tracing.proto:207

Map to the layer of span

Used in: SpanObject

message SpanObject

Tracing.proto:113

Span represents a execution unit in the system, with duration and many other attributes. Span could be a method, a RPC, MQ message produce or consume. In the practice, the span should be added when it is really necessary, to avoid payload overhead. We recommend to creating spans in across process(client/server of RPC/MQ) and across thread cases only.

Used in: SegmentObject

enum SpanType

Tracing.proto:183

Map to the type of span

Used in: SpanObject

message TCPServiceMeshMetric

service-mesh.proto:86

Used in: TCPServiceMeshMetrics

message TCPServiceMeshMetrics

service-mesh.proto:124

Used in: ServiceMeshMetrics

message TextLog

Logging.proto:88

Literal text log, typically requires regex or split mechanism to filter meaningful info.

Used in: LogDataBody

message Thread

JVMMetric.proto:96

See: https://docs.oracle.com/javase/8/docs/api/java/lang/management/ThreadMXBean.html

Used in: JVMMetric

message ThreadSnapshot

Profile.proto:56

dumped thread snapshot

Used as request type in: ProfileTask.collectSnapshot, ProfileTask.collectSnapshot

message ThreadStack

Profile.proto:69

Used in: ThreadSnapshot

message TraceContext

Logging.proto:103

Logs with trace context, represent agent system has injects context(IDs) into log text.

Used in: LogData

enum Type

Event.proto:74

Used in: Event

message YAMLLog

Logging.proto:98

YAML formatted log. The yaml field represents the string that could be formatted as a YAML map.

Used in: LogDataBody

message ZTunnelAttachmentEnvironment

accesslog.proto:95

Used in: ConnectionAttachment

enum ZTunnelAttachmentEnvironmentDetectBy

accesslog.proto:104

Used in: ZTunnelAttachmentEnvironment

enum ZTunnelAttachmentSecurityPolicy

accesslog.proto:108

Used in: ZTunnelAttachmentEnvironment