You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by GitBox <gi...@apache.org> on 2020/08/07 21:12:34 UTC

[GitHub] [skywalking] ZackButcher opened a new issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

ZackButcher opened a new issue #5266:
URL: https://github.com/apache/skywalking/issues/5266


   Please answer these questions before submitting your issue.
   
   - Why do you submit this issue?
   - [X] Question or discussion
   - [ ] Bug
   - [ ] Requirement
   - [X] Feature or performance improvement
   
   ___
   ### Requirement or improvement
   
   There has been interest in other projects integrating with SkyWalking (for example [Envoy](https://github.com/envoyproxy/envoy/issues/12486)) using the Trace Data Protocol v3 gRPC interface ([skywalking-data-collect-protocol](https://github.com/apache/skywalking-data-collect-protocol)). However, today those protobufs don't have a lot of documentation on the individual fields, and they don't match the [usual protobuf style guide](https://developers.google.com/protocol-buffers/docs/style) in a few places.
   
   <details><summary>Here's the output of running a <a href="https://github.com/uber/prototool#prototool-lint">linter</a> on the protobufs today:</summary>
   <pre>
   browser/BrowserPerf.proto:1:1:File name should be lower_snake_case.proto.
   browser/BrowserPerf.proto:1:1:File option "java_outer_classname" is required.
   browser/BrowserPerf.proto:1:1:File option "objc_class_prefix" is required.
   browser/BrowserPerf.proto:1:1:File option "php_namespace" is required.
   browser/BrowserPerf.proto:1:1:No package declaration found.
   browser/BrowserPerf.proto:1:1:No package declaration found.
   browser/BrowserPerf.proto:1:1:C-Style comments are not allowed.
   browser/BrowserPerf.proto:29:1:Service name "BrowserPerfService" must end with "API". Since it currently ends with "Service", this likely means replacing "Service" with "API"
   browser/BrowserPerf.proto:29:1:Expected filename to be "browser_perf_service.proto" for file containing service "BrowserPerfService" but was "BrowserPerf.proto".
   browser/BrowserPerf.proto:32:5:The name "collectPerfData" contains the outlawed name "data". Data is a decorator and all types on Protobuf are data, consider merging this information into a higher-level type, or if you must have such a type, Use "Info" instead..
   browser/BrowserPerf.proto:32:5:Name of request type "BrowserPerfData" should be "collectPerfDataRequest".
   browser/BrowserPerf.proto:32:5:Name of response type "Commands" should be "collectPerfDataResponse".
   browser/BrowserPerf.proto:32:5:Response type "Commands" should be defined in the same file as the corresponding service.
   browser/BrowserPerf.proto:32:5:RPC "collectPerfData" needs a comment with a complete sentence that starts on the first line of the comment.
   browser/BrowserPerf.proto:32:5:RPC name "collectPerfData" must be capitalized.
   browser/BrowserPerf.proto:36:5:Name of request type "BrowserErrorLog" should be "collectErrorLogsRequest".
   browser/BrowserPerf.proto:36:5:Name of response type "Commands" should be "collectErrorLogsResponse".
   browser/BrowserPerf.proto:36:5:Response type "Commands" should be defined in the same file as the corresponding service.
   browser/BrowserPerf.proto:36:5:Message "Commands" is already used as a request or response type in an RPC and all request and response types must be unique.
   browser/BrowserPerf.proto:36:5:RPC "collectErrorLogs" needs a comment with a complete sentence that starts on the first line of the comment.
   browser/BrowserPerf.proto:36:5:RPC name "collectErrorLogs" must be capitalized.
   browser/BrowserPerf.proto:40:1:The name "BrowserPerfData" contains the outlawed name "data". Data is a decorator and all types on Protobuf are data, consider merging this information into a higher-level type, or if you must have such a type, Use "Info" instead..
   browser/BrowserPerf.proto:43:5:Field name "serviceVersion" must be lower_snake_case.
   browser/BrowserPerf.proto:48:5:Field name "pagePath" must be lower_snake_case.
   browser/BrowserPerf.proto:50:5:Field name "redirectTime" must be lower_snake_case.
   browser/BrowserPerf.proto:51:5:Field name "dnsTime" must be lower_snake_case.
   browser/BrowserPerf.proto:52:5:Field name "reqTime" must be lower_snake_case.
   browser/BrowserPerf.proto:54:5:Field name "domAnalysisTime" must be lower_snake_case.
   browser/BrowserPerf.proto:55:5:Field name "domReadyTime" must be lower_snake_case.
   browser/BrowserPerf.proto:57:5:Field name "blankTime" must be lower_snake_case.
   browser/BrowserPerf.proto:62:5:Field name "uniqueId" must be lower_snake_case.
   browser/BrowserPerf.proto:65:5:Field name "serviceVersion" must be lower_snake_case.
   browser/BrowserPerf.proto:70:5:Field name "pagePath" must be lower_snake_case.
   browser/BrowserPerf.proto:77:5:Field name "errorUrl" must be lower_snake_case.
   browser/BrowserPerf.proto:79:5:Field name "firstReportedError" must be lower_snake_case.
   browser/BrowserPerf.proto:82:1:Enum "ErrorCategory" needs a comment with a complete sentence that starts on the first line of the comment.
   browser/BrowserPerf.proto:82:1:Enum "ErrorCategory" is in the same file as a service and should be in a separate file.
   browser/BrowserPerf.proto:83:5:Field name "ajax" must be UPPER_SNAKE_CASE.
   browser/BrowserPerf.proto:83:5:Enum field "ajax" is expected to have the prefix "ERROR_CATEGORY_".
   browser/BrowserPerf.proto:83:5:Zero value enum field "ajax" is expected to have the name "ERROR_CATEGORY_INVALID".
   browser/BrowserPerf.proto:84:5:Field name "resource" must be UPPER_SNAKE_CASE.
   browser/BrowserPerf.proto:84:5:Enum field "resource" is expected to have the prefix "ERROR_CATEGORY_".
   browser/BrowserPerf.proto:85:5:Field name "vue" must be UPPER_SNAKE_CASE.
   browser/BrowserPerf.proto:85:5:Enum field "vue" is expected to have the prefix "ERROR_CATEGORY_".
   browser/BrowserPerf.proto:86:5:Field name "promise" must be UPPER_SNAKE_CASE.
   browser/BrowserPerf.proto:86:5:Enum field "promise" is expected to have the prefix "ERROR_CATEGORY_".
   browser/BrowserPerf.proto:87:5:Field name "js" must be UPPER_SNAKE_CASE.
   browser/BrowserPerf.proto:87:5:Enum field "js" is expected to have the prefix "ERROR_CATEGORY_".
   browser/BrowserPerf.proto:88:5:Field name "unknown" must be UPPER_SNAKE_CASE.
   browser/BrowserPerf.proto:88:5:Enum field "unknown" is expected to have the prefix "ERROR_CATEGORY_".
   common/Common.proto:1:1:File name should be lower_snake_case.proto.
   common/Common.proto:1:1:File option "java_outer_classname" is required.
   common/Common.proto:1:1:File option "objc_class_prefix" is required.
   common/Common.proto:1:1:File option "php_namespace" is required.
   common/Common.proto:1:1:No package declaration found.
   common/Common.proto:1:1:No package declaration found.
   common/Common.proto:1:1:C-Style comments are not allowed.
   common/Common.proto:26:1:Message "KeyStringValuePair" needs a comment with a complete sentence that starts on the first line of the comment.
   common/Common.proto:31:1:Message "CPU" needs a comment with a complete sentence that starts on the first line of the comment.
   common/Common.proto:32:5:Field name "usagePercent" must be lower_snake_case.
   common/Common.proto:39:5:Field name "client" must be UPPER_SNAKE_CASE.
   common/Common.proto:39:5:Enum field "client" is expected to have the prefix "DETECT_POINT_".
   common/Common.proto:39:5:Zero value enum field "client" is expected to have the name "DETECT_POINT_INVALID".
   common/Common.proto:40:5:Field name "server" must be UPPER_SNAKE_CASE.
   common/Common.proto:40:5:Enum field "server" is expected to have the prefix "DETECT_POINT_".
   common/Common.proto:41:5:Field name "proxy" must be UPPER_SNAKE_CASE.
   common/Common.proto:41:5:Enum field "proxy" is expected to have the prefix "DETECT_POINT_".
   common/Common.proto:44:1:Message "Commands" needs a comment with a complete sentence that starts on the first line of the comment.
   common/Common.proto:48:1:Message "Command" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/CLRMetric.proto:1:1:File name should be lower_snake_case.proto.
   language-agent/CLRMetric.proto:1:1:File option "csharp_namespace" set in some files in directory but not in others.
   language-agent/CLRMetric.proto:1:1:File option "go_package" set in some files in directory but not in others.
   language-agent/CLRMetric.proto:1:1:File option "java_outer_classname" is required.
   language-agent/CLRMetric.proto:1:1:File option "objc_class_prefix" is required.
   language-agent/CLRMetric.proto:1:1:File option "php_namespace" is required.
   language-agent/CLRMetric.proto:1:1:No package declaration found.
   language-agent/CLRMetric.proto:1:1:No package declaration found.
   language-agent/CLRMetric.proto:1:1:C-Style comments are not allowed.
   language-agent/CLRMetric.proto:28:1:Service "CLRMetricReportService" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/CLRMetric.proto:28:1:Service name "CLRMetricReportService" must end with "API". Since it currently ends with "Service", this likely means replacing "Service" with "API"
   language-agent/CLRMetric.proto:28:1:Expected filename to be "clr_metric_report_service.proto" for file containing service "CLRMetricReportService" but was "CLRMetric.proto".
   language-agent/CLRMetric.proto:29:5:Name of request type "CLRMetricCollection" should be "collectRequest".
   language-agent/CLRMetric.proto:29:5:Name of response type "Commands" should be "collectResponse".
   language-agent/CLRMetric.proto:29:5:Response type "Commands" should be defined in the same file as the corresponding service.
   language-agent/CLRMetric.proto:29:5:RPC "collect" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/CLRMetric.proto:29:5:RPC name "collect" must be capitalized.
   language-agent/CLRMetric.proto:36:5:Field name "serviceInstance" must be lower_snake_case.
   language-agent/CLRMetric.proto:39:1:Message "CLRMetric" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/CLRMetric.proto:39:1:Message "CLRMetric" is not a request or response of any service in this file and should be in a separate file.
   language-agent/CLRMetric.proto:46:1:Message "ClrGC" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/CLRMetric.proto:46:1:Message "ClrGC" is not a request or response of any service in this file and should be in a separate file.
   language-agent/CLRMetric.proto:47:5:Field name "Gen0CollectCount" must be lower_snake_case.
   language-agent/CLRMetric.proto:48:5:Field name "Gen1CollectCount" must be lower_snake_case.
   language-agent/CLRMetric.proto:49:5:Field name "Gen2CollectCount" must be lower_snake_case.
   language-agent/CLRMetric.proto:50:5:Field name "HeapMemory" must be lower_snake_case.
   language-agent/CLRMetric.proto:53:1:Message "ClrThread" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/CLRMetric.proto:53:1:Message "ClrThread" is not a request or response of any service in this file and should be in a separate file.
   language-agent/CLRMetric.proto:54:5:Field name "AvailableCompletionPortThreads" must be lower_snake_case.
   language-agent/CLRMetric.proto:55:5:Field name "AvailableWorkerThreads" must be lower_snake_case.
   language-agent/CLRMetric.proto:56:5:Field name "MaxCompletionPortThreads" must be lower_snake_case.
   language-agent/CLRMetric.proto:57:5:Field name "MaxWorkerThreads" must be lower_snake_case.
   language-agent/JVMMetric.proto:1:1:File name should be lower_snake_case.proto.
   language-agent/JVMMetric.proto:1:1:File option "csharp_namespace" set in some files in directory but not in others.
   language-agent/JVMMetric.proto:1:1:File option "go_package" set in some files in directory but not in others.
   language-agent/JVMMetric.proto:1:1:File option "java_outer_classname" is required.
   language-agent/JVMMetric.proto:1:1:File option "objc_class_prefix" is required.
   language-agent/JVMMetric.proto:1:1:File option "php_namespace" is required.
   language-agent/JVMMetric.proto:1:1:No package declaration found.
   language-agent/JVMMetric.proto:1:1:No package declaration found.
   language-agent/JVMMetric.proto:1:1:C-Style comments are not allowed.
   language-agent/JVMMetric.proto:29:1:Service name "JVMMetricReportService" must end with "API". Since it currently ends with "Service", this likely means replacing "Service" with "API"
   language-agent/JVMMetric.proto:29:1:Expected filename to be "jvm_metric_report_service.proto" for file containing service "JVMMetricReportService" but was "JVMMetric.proto".
   language-agent/JVMMetric.proto:30:5:Name of request type "JVMMetricCollection" should be "collectRequest".
   language-agent/JVMMetric.proto:30:5:Name of response type "Commands" should be "collectResponse".
   language-agent/JVMMetric.proto:30:5:Response type "Commands" should be defined in the same file as the corresponding service.
   language-agent/JVMMetric.proto:30:5:RPC "collect" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/JVMMetric.proto:30:5:RPC name "collect" must be capitalized.
   language-agent/JVMMetric.proto:37:5:Field name "serviceInstance" must be lower_snake_case.
   language-agent/JVMMetric.proto:40:1:Message "JVMMetric" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/JVMMetric.proto:40:1:Message "JVMMetric" is not a request or response of any service in this file and should be in a separate file.
   language-agent/JVMMetric.proto:44:14:Field name "memoryPool" must be lower_snake_case.
   language-agent/JVMMetric.proto:49:1:Message "Memory" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/JVMMetric.proto:49:1:Message "Memory" is not a request or response of any service in this file and should be in a separate file.
   language-agent/JVMMetric.proto:50:5:Field name "isHeap" must be lower_snake_case.
   language-agent/JVMMetric.proto:57:1:Message "MemoryPool" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/JVMMetric.proto:57:1:Message "MemoryPool" is not a request or response of any service in this file and should be in a separate file.
   language-agent/JVMMetric.proto:65:1:Enum "PoolType" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/JVMMetric.proto:65:1:Enum "PoolType" is in the same file as a service and should be in a separate file.
   language-agent/JVMMetric.proto:66:5:Enum field "CODE_CACHE_USAGE" is expected to have the prefix "POOL_TYPE_".
   language-agent/JVMMetric.proto:66:5:Zero value enum field "CODE_CACHE_USAGE" is expected to have the name "POOL_TYPE_INVALID".
   language-agent/JVMMetric.proto:67:5:Enum field "NEWGEN_USAGE" is expected to have the prefix "POOL_TYPE_".
   language-agent/JVMMetric.proto:68:5:Enum field "OLDGEN_USAGE" is expected to have the prefix "POOL_TYPE_".
   language-agent/JVMMetric.proto:69:5:Enum field "SURVIVOR_USAGE" is expected to have the prefix "POOL_TYPE_".
   language-agent/JVMMetric.proto:70:5:Enum field "PERMGEN_USAGE" is expected to have the prefix "POOL_TYPE_".
   language-agent/JVMMetric.proto:71:5:Enum field "METASPACE_USAGE" is expected to have the prefix "POOL_TYPE_".
   language-agent/JVMMetric.proto:74:1:Message "GC" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/JVMMetric.proto:74:1:Message "GC" is not a request or response of any service in this file and should be in a separate file.
   language-agent/JVMMetric.proto:80:1:Enum "GCPhrase" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/JVMMetric.proto:80:1:Enum "GCPhrase" is in the same file as a service and should be in a separate file.
   language-agent/JVMMetric.proto:81:5:Enum field "NEW" is expected to have the prefix "GC_PHRASE_".
   language-agent/JVMMetric.proto:81:5:Zero value enum field "NEW" is expected to have the name "GC_PHRASE_INVALID".
   language-agent/JVMMetric.proto:82:5:Enum field "OLD" is expected to have the prefix "GC_PHRASE_".
   language-agent/JVMMetric.proto:85:1:Message "Thread" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/JVMMetric.proto:85:1:Message "Thread" is not a request or response of any service in this file and should be in a separate file.
   language-agent/JVMMetric.proto:86:3:Field name "liveCount" must be lower_snake_case.
   language-agent/JVMMetric.proto:87:3:Field name "daemonCount" must be lower_snake_case.
   language-agent/JVMMetric.proto:88:3:Field name "peakCount" must be lower_snake_case.
   language-agent/Meter.proto:1:1:File name should be lower_snake_case.proto.
   language-agent/Meter.proto:1:1:File option "csharp_namespace" set in some files in directory but not in others.
   language-agent/Meter.proto:1:1:File option "go_package" set in some files in directory but not in others.
   language-agent/Meter.proto:1:1:File option "csharp_namespace" is required.
   language-agent/Meter.proto:1:1:File option "go_package" is required.
   language-agent/Meter.proto:1:1:File option "java_outer_classname" is required.
   language-agent/Meter.proto:1:1:File option "objc_class_prefix" is required.
   language-agent/Meter.proto:1:1:File option "php_namespace" is required.
   language-agent/Meter.proto:1:1:No package declaration found.
   language-agent/Meter.proto:1:1:No package declaration found.
   language-agent/Meter.proto:1:1:C-Style comments are not allowed.
   language-agent/Meter.proto:26:1:Service "MeterReportService" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/Meter.proto:26:1:Service name "MeterReportService" must end with "API". Since it currently ends with "Service", this likely means replacing "Service" with "API"
   language-agent/Meter.proto:26:1:Expected filename to be "meter_report_service.proto" for file containing service "MeterReportService" but was "Meter.proto".
   language-agent/Meter.proto:28:5:Name of request type "MeterData" should be "collectRequest".
   language-agent/Meter.proto:28:5:Name of response type "Commands" should be "collectResponse".
   language-agent/Meter.proto:28:5:Response type "Commands" should be defined in the same file as the corresponding service.
   language-agent/Meter.proto:28:5:RPC name "collect" must be capitalized.
   language-agent/Meter.proto:33:1:Message "Label" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/Meter.proto:33:1:Message "Label" is not a request or response of any service in this file and should be in a separate file.
   language-agent/Meter.proto:39:1:Message "MeterBucketValue" is not a request or response of any service in this file and should be in a separate file.
   language-agent/Meter.proto:49:1:Message "MeterSingleValue" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/Meter.proto:49:1:Message "MeterSingleValue" is not a request or response of any service in this file and should be in a separate file.
   language-agent/Meter.proto:59:1:Message "MeterHistogram" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/Meter.proto:59:1:Message "MeterHistogram" is not a request or response of any service in this file and should be in a separate file.
   language-agent/Meter.proto:69:1:The name "MeterData" contains the outlawed name "data". Data is a decorator and all types on Protobuf are data, consider merging this information into a higher-level type, or if you must have such a type, Use "Info" instead..
   language-agent/Meter.proto:72:9:Field name "singleValue" must be lower_snake_case.
   language-agent/Meter.proto:78:5:Field name "serviceInstance" must be lower_snake_case.
   language-agent/Meter.proto:83:1:Message "MeterDataCollection" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/Meter.proto:83:1:The name "MeterDataCollection" contains the outlawed name "data". Data is a decorator and all types on Protobuf are data, consider merging this information into a higher-level type, or if you must have such a type, Use "Info" instead..
   language-agent/Meter.proto:83:1:Message "MeterDataCollection" is not a request or response of any service in this file and should be in a separate file.
   language-agent/Meter.proto:84:14:Field name "meterData" must be lower_snake_case.
   language-agent/Meter.proto:84:14:The name "meterData" contains the outlawed name "data". Data is a decorator and all types on Protobuf are data, consider merging this information into a higher-level type, or if you must have such a type, Use "Info" instead..
   language-agent/Tracing.proto:1:1:File name should be lower_snake_case.proto.
   language-agent/Tracing.proto:1:1:File option "csharp_namespace" set in some files in directory but not in others.
   language-agent/Tracing.proto:1:1:File option "go_package" set in some files in directory but not in others.
   language-agent/Tracing.proto:1:1:File option "java_outer_classname" is required.
   language-agent/Tracing.proto:1:1:File option "objc_class_prefix" is required.
   language-agent/Tracing.proto:1:1:File option "php_namespace" is required.
   language-agent/Tracing.proto:1:1:No package declaration found.
   language-agent/Tracing.proto:1:1:No package declaration found.
   language-agent/Tracing.proto:1:1:C-Style comments are not allowed.
   language-agent/Tracing.proto:30:1:Service name "TraceSegmentReportService" must end with "API". Since it currently ends with "Service", this likely means replacing "Service" with "API"
   language-agent/Tracing.proto:30:1:Expected filename to be "trace_segment_report_service.proto" for file containing service "TraceSegmentReportService" but was "Tracing.proto".
   language-agent/Tracing.proto:31:5:Name of request type "SegmentObject" should be "collectRequest".
   language-agent/Tracing.proto:31:5:Name of response type "Commands" should be "collectResponse".
   language-agent/Tracing.proto:31:5:Response type "Commands" should be defined in the same file as the corresponding service.
   language-agent/Tracing.proto:31:5:RPC "collect" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/Tracing.proto:31:5:RPC name "collect" must be capitalized.
   language-agent/Tracing.proto:42:5:Field name "traceId" must be lower_snake_case.
   language-agent/Tracing.proto:44:5:Field name "traceSegmentId" must be lower_snake_case.
   language-agent/Tracing.proto:57:5:Field name "serviceInstance" must be lower_snake_case.
   language-agent/Tracing.proto:62:5:Field name "isSizeLimited" must be lower_snake_case.
   language-agent/Tracing.proto:66:1:Message "SegmentReference" is not a request or response of any service in this file and should be in a separate file.
   language-agent/Tracing.proto:70:5:Field name "refType" must be lower_snake_case.
   language-agent/Tracing.proto:72:5:Field name "traceId" must be lower_snake_case.
   language-agent/Tracing.proto:74:5:Field name "parentTraceSegmentId" must be lower_snake_case.
   language-agent/Tracing.proto:76:5:Field name "parentSpanId" must be lower_snake_case.
   language-agent/Tracing.proto:79:5:Field name "parentService" must be lower_snake_case.
   language-agent/Tracing.proto:82:5:Field name "parentServiceInstance" must be lower_snake_case.
   language-agent/Tracing.proto:86:5:Field name "parentEndpoint" must be lower_snake_case.
   language-agent/Tracing.proto:92:5:Field name "networkAddressUsedAtPeer" must be lower_snake_case.
   language-agent/Tracing.proto:99:1:Message "SpanObject" is not a request or response of any service in this file and should be in a separate file.
   language-agent/Tracing.proto:102:5:Field name "spanId" must be lower_snake_case.
   language-agent/Tracing.proto:106:5:Field name "parentSpanId" must be lower_snake_case.
   language-agent/Tracing.proto:109:5:Field name "startTime" must be lower_snake_case.
   language-agent/Tracing.proto:112:5:Field name "endTime" must be lower_snake_case.
   language-agent/Tracing.proto:124:5:Field name "operationName" must be lower_snake_case.
   language-agent/Tracing.proto:130:5:Field name "spanType" must be lower_snake_case.
   language-agent/Tracing.proto:132:5:Field name "spanLayer" must be lower_snake_case.
   language-agent/Tracing.proto:139:5:Field name "componentId" must be lower_snake_case.
   language-agent/Tracing.proto:143:5:Field name "isError" must be lower_snake_case.
   language-agent/Tracing.proto:157:5:Field name "skipAnalysis" must be lower_snake_case.
   language-agent/Tracing.proto:160:1:Message "Log" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/Tracing.proto:160:1:Message "Log" is not a request or response of any service in this file and should be in a separate file.
   language-agent/Tracing.proto:165:14:The name "data" contains the outlawed name "data". Data is a decorator and all types on Protobuf are data, consider merging this information into a higher-level type, or if you must have such a type, Use "Info" instead..
   language-agent/Tracing.proto:169:1:Enum "SpanType" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/Tracing.proto:169:1:Enum "SpanType" is in the same file as a service and should be in a separate file.
   language-agent/Tracing.proto:171:5:Field name "Entry" must be UPPER_SNAKE_CASE.
   language-agent/Tracing.proto:171:5:Enum field "Entry" is expected to have the prefix "SPAN_TYPE_".
   language-agent/Tracing.proto:171:5:Zero value enum field "Entry" is expected to have the name "SPAN_TYPE_INVALID".
   language-agent/Tracing.proto:173:5:Field name "Exit" must be UPPER_SNAKE_CASE.
   language-agent/Tracing.proto:173:5:Enum field "Exit" is expected to have the prefix "SPAN_TYPE_".
   language-agent/Tracing.proto:175:5:Field name "Local" must be UPPER_SNAKE_CASE.
   language-agent/Tracing.proto:175:5:Enum field "Local" is expected to have the prefix "SPAN_TYPE_".
   language-agent/Tracing.proto:179:1:Message "ID" is not a request or response of any service in this file and should be in a separate file.
   language-agent/Tracing.proto:184:1:Enum "RefType" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/Tracing.proto:184:1:Enum "RefType" is in the same file as a service and should be in a separate file.
   language-agent/Tracing.proto:186:5:Field name "CrossProcess" must be UPPER_SNAKE_CASE.
   language-agent/Tracing.proto:186:5:Enum field "CrossProcess" is expected to have the prefix "REF_TYPE_".
   language-agent/Tracing.proto:186:5:Zero value enum field "CrossProcess" is expected to have the name "REF_TYPE_INVALID".
   language-agent/Tracing.proto:189:5:Field name "CrossThread" must be UPPER_SNAKE_CASE.
   language-agent/Tracing.proto:189:5:Enum field "CrossThread" is expected to have the prefix "REF_TYPE_".
   language-agent/Tracing.proto:193:1:Enum "SpanLayer" needs a comment with a complete sentence that starts on the first line of the comment.
   language-agent/Tracing.proto:193:1:Enum "SpanLayer" is in the same file as a service and should be in a separate file.
   language-agent/Tracing.proto:195:5:Field name "Unknown" must be UPPER_SNAKE_CASE.
   language-agent/Tracing.proto:195:5:Enum field "Unknown" is expected to have the prefix "SPAN_LAYER_".
   language-agent/Tracing.proto:195:5:Zero value enum field "Unknown" is expected to have the name "SPAN_LAYER_INVALID".
   language-agent/Tracing.proto:197:5:Field name "Database" must be UPPER_SNAKE_CASE.
   language-agent/Tracing.proto:197:5:Enum field "Database" is expected to have the prefix "SPAN_LAYER_".
   language-agent/Tracing.proto:197:5:The name "Database" contains the outlawed name "data". Data is a decorator and all types on Protobuf are data, consider merging this information into a higher-level type, or if you must have such a type, Use "Info" instead..
   language-agent/Tracing.proto:199:5:Field name "RPCFramework" must be UPPER_SNAKE_CASE.
   language-agent/Tracing.proto:199:5:Enum field "RPCFramework" is expected to have the prefix "SPAN_LAYER_".
   language-agent/Tracing.proto:201:5:Field name "Http" must be UPPER_SNAKE_CASE.
   language-agent/Tracing.proto:201:5:Enum field "Http" is expected to have the prefix "SPAN_LAYER_".
   language-agent/Tracing.proto:203:5:Enum field "MQ" is expected to have the prefix "SPAN_LAYER_".
   language-agent/Tracing.proto:205:5:Field name "Cache" must be UPPER_SNAKE_CASE.
   language-agent/Tracing.proto:205:5:Enum field "Cache" is expected to have the prefix "SPAN_LAYER_".
   management/Management.proto:1:1:File name should be lower_snake_case.proto.
   management/Management.proto:1:1:File option "java_outer_classname" is required.
   management/Management.proto:1:1:File option "objc_class_prefix" is required.
   management/Management.proto:1:1:File option "php_namespace" is required.
   management/Management.proto:1:1:No package declaration found.
   management/Management.proto:1:1:No package declaration found.
   management/Management.proto:1:1:C-Style comments are not allowed.
   management/Management.proto:29:1:Service name "ManagementService" must end with "API". Since it currently ends with "Service", this likely means replacing "Service" with "API"
   management/Management.proto:29:1:Expected filename to be "management_service.proto" for file containing service "ManagementService" but was "Management.proto".
   management/Management.proto:31:5:Name of request type "InstanceProperties" should be "reportInstancePropertiesRequest".
   management/Management.proto:31:5:Name of response type "Commands" should be "reportInstancePropertiesResponse".
   management/Management.proto:31:5:Response type "Commands" should be defined in the same file as the corresponding service.
   management/Management.proto:31:5:RPC name "reportInstanceProperties" must be capitalized.
   management/Management.proto:37:5:Name of request type "InstancePingPkg" should be "keepAliveRequest".
   management/Management.proto:37:5:Name of response type "Commands" should be "keepAliveResponse".
   management/Management.proto:37:5:Response type "Commands" should be defined in the same file as the corresponding service.
   management/Management.proto:37:5:Message "Commands" is already used as a request or response type in an RPC and all request and response types must be unique.
   management/Management.proto:37:5:RPC name "keepAlive" must be capitalized.
   management/Management.proto:44:5:Field name "serviceInstance" must be lower_snake_case.
   management/Management.proto:50:5:Field name "serviceInstance" must be lower_snake_case.
   profile/Profile.proto:1:1:File name should be lower_snake_case.proto.
   profile/Profile.proto:1:1:File option "java_outer_classname" is required.
   profile/Profile.proto:1:1:File option "objc_class_prefix" is required.
   profile/Profile.proto:1:1:File option "php_namespace" is required.
   profile/Profile.proto:1:1:No package declaration found.
   profile/Profile.proto:1:1:No package declaration found.
   profile/Profile.proto:1:1:C-Style comments are not allowed.
   profile/Profile.proto:28:1:Service "ProfileTask" needs a comment with a complete sentence that starts on the first line of the comment.
   profile/Profile.proto:28:1:Service name "ProfileTask" must end with "API".
   profile/Profile.proto:28:1:Expected filename to be "profile_task.proto" for file containing service "ProfileTask" but was "Profile.proto".
   profile/Profile.proto:31:5:Name of request type "ProfileTaskCommandQuery" should be "getProfileTaskCommandsRequest".
   profile/Profile.proto:31:5:Name of response type "Commands" should be "getProfileTaskCommandsResponse".
   profile/Profile.proto:31:5:Response type "Commands" should be defined in the same file as the corresponding service.
   profile/Profile.proto:31:5:RPC "getProfileTaskCommands" needs a comment with a complete sentence that starts on the first line of the comment.
   profile/Profile.proto:31:5:RPC name "getProfileTaskCommands" must be capitalized.
   profile/Profile.proto:35:5:Name of request type "ThreadSnapshot" should be "collectSnapshotRequest".
   profile/Profile.proto:35:5:Name of response type "Commands" should be "collectSnapshotResponse".
   profile/Profile.proto:35:5:Response type "Commands" should be defined in the same file as the corresponding service.
   profile/Profile.proto:35:5:Message "Commands" is already used as a request or response type in an RPC and all request and response types must be unique.
   profile/Profile.proto:35:5:RPC "collectSnapshot" needs a comment with a complete sentence that starts on the first line of the comment.
   profile/Profile.proto:35:5:RPC name "collectSnapshot" must be capitalized.
   profile/Profile.proto:39:5:Name of request type "ProfileTaskFinishReport" should be "reportTaskFinishRequest".
   profile/Profile.proto:39:5:Name of response type "Commands" should be "reportTaskFinishResponse".
   profile/Profile.proto:39:5:Response type "Commands" should be defined in the same file as the corresponding service.
   profile/Profile.proto:39:5:Message "Commands" is already used as a request or response type in an RPC and all request and response types must be unique.
   profile/Profile.proto:39:5:RPC "reportTaskFinish" needs a comment with a complete sentence that starts on the first line of the comment.
   profile/Profile.proto:39:5:RPC name "reportTaskFinish" must be capitalized.
   profile/Profile.proto:47:5:Field name "serviceInstance" must be lower_snake_case.
   profile/Profile.proto:50:5:Field name "lastCommandTime" must be lower_snake_case.
   profile/Profile.proto:56:5:Field name "taskId" must be lower_snake_case.
   profile/Profile.proto:58:5:Field name "traceSegmentId" must be lower_snake_case.
   profile/Profile.proto:67:1:Message "ThreadStack" needs a comment with a complete sentence that starts on the first line of the comment.
   profile/Profile.proto:67:1:Message "ThreadStack" is not a request or response of any service in this file and should be in a separate file.
   profile/Profile.proto:69:14:Field name "codeSignatures" must be lower_snake_case.
   profile/Profile.proto:76:5:Field name "serviceInstance" must be lower_snake_case.
   profile/Profile.proto:79:5:Field name "taskId" must be lower_snake_case.
   service-mesh-probe/service-mesh.proto:1:1:File name should be lower_snake_case.proto.
   service-mesh-probe/service-mesh.proto:1:1:File option "java_outer_classname" is required.
   service-mesh-probe/service-mesh.proto:1:1:File option "objc_class_prefix" is required.
   service-mesh-probe/service-mesh.proto:1:1:File option "php_namespace" is required.
   service-mesh-probe/service-mesh.proto:1:1:No package declaration found.
   service-mesh-probe/service-mesh.proto:1:1:No package declaration found.
   service-mesh-probe/service-mesh.proto:1:1:C-Style comments are not allowed.
   service-mesh-probe/service-mesh.proto:29:1:Service name "ServiceMeshMetricService" must end with "API". Since it currently ends with "Service", this likely means replacing "Service" with "API"
   service-mesh-probe/service-mesh.proto:29:1:Expected filename to be "service_mesh_metric_service.proto" for file containing service "ServiceMeshMetricService" but was "service-mesh.proto".
   service-mesh-probe/service-mesh.proto:30:5:Name of request type "ServiceMeshMetric" should be "collectRequest".
   service-mesh-probe/service-mesh.proto:30:5:Name of response type "MeshProbeDownstream" should be "collectResponse".
   service-mesh-probe/service-mesh.proto:30:5:RPC "collect" needs a comment with a complete sentence that starts on the first line of the comment.
   service-mesh-probe/service-mesh.proto:30:5:RPC name "collect" must be capitalized.
   service-mesh-probe/service-mesh.proto:37:5:Field name "startTime" must be lower_snake_case.
   service-mesh-probe/service-mesh.proto:40:5:Field name "endTime" must be lower_snake_case.
   service-mesh-probe/service-mesh.proto:41:5:Field name "sourceServiceName" must be lower_snake_case.
   service-mesh-probe/service-mesh.proto:42:5:Field name "sourceServiceInstance" must be lower_snake_case.
   service-mesh-probe/service-mesh.proto:43:5:Field name "destServiceName" must be lower_snake_case.
   service-mesh-probe/service-mesh.proto:44:5:Field name "destServiceInstance" must be lower_snake_case.
   service-mesh-probe/service-mesh.proto:47:5:Field name "responseCode" must be lower_snake_case.
   service-mesh-probe/service-mesh.proto:50:5:Field name "detectPoint" must be lower_snake_case.
   service-mesh-probe/service-mesh.proto:53:1:Enum "Protocol" needs a comment with a complete sentence that starts on the first line of the comment.
   service-mesh-probe/service-mesh.proto:53:1:Enum "Protocol" is in the same file as a service and should be in a separate file.
   service-mesh-probe/service-mesh.proto:54:5:Enum field "HTTP" is expected to have the prefix "PROTOCOL_".
   service-mesh-probe/service-mesh.proto:54:5:Zero value enum field "HTTP" is expected to have the name "PROTOCOL_INVALID".
   service-mesh-probe/service-mesh.proto:55:5:Field name "gRPC" must be UPPER_SNAKE_CASE.
   service-mesh-probe/service-mesh.proto:55:5:Enum field "gRPC" is expected to have the prefix "PROTOCOL_".
   </pre>
   </details>
   
   Cleaning up these protos and adding documentation will make it a lot easier for other projects to start to use SkyWalking gRPC interfaces. If the community is open to it, I think there's a few things we can do:
   
   - [ ] Add documentation to the protobufs. [Zipkin protobuf documentation](https://github.com/openzipkin/zipkin-api/blob/master/zipkin.proto) is a great example and I think the SkyWalking protobufs can be documented that well.
   - [ ] Add a protobuf linter to CI to help keep new additions in line with style guide
   - [ ] Incrementally update the existing protobufs to be in line with style guide (address all the linter issues above)
     - _some_ of these changes might be breaking for clients - I'm not 100% how changing the names to snake_case will affect the generated client names (this might be different for each language depending on its protoc plugin implementation).
   
   I'm already starting to work on a PR to add more documentation to the protobufs (though it'll take a lot more work to get them to anywhere near Zipkins!). If the community is behind changing the protobufs to match the style guide then I can follow up the docs with some PRs to start to address the linter complaints.
   
   /cc @wu-sheng, we spoke about this briefly - let me know what you think.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] dio commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
dio commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-671006141


   It doesn't block technically, but if someone finds out, for example, we don't have package name defined in each of our *.proto. Probably they will raise their eyebrows. The package declaration in the .proto file is the namespace used by the protobuf language. The recommended name pattern will be something like `package company_name.project_name`. As an example, the well-known types are defined in the `google.protobuf` namespace. The lack of a package declaration means that all declarations in your *.proto file are in the top-level global namespace, which seems very highly prone to namespace conflicts. The "new set of APIs"  plan above eases the pain if we want to make the linter happy, while we still have the "current" version generates compatible code.
   
   However, in the end, It's up to you for sure, whether we want to follow a certain style-guide "approved" by the industry or not.
   
   
   
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-671919582


   @kezhenxu94 The reason I pinged you all is, I want if only OAP upgrade this, but the agent doesn't, the things still work. Vice versa, such as the existing 8.x agent still works with Cloud system, such as Alibaba Cloud Service. 
   
   Basically, this is just a style thing, not relates to the feature. I don't want the whole world breaks because of this tiny thing. After all, we just upgrade the protocol to v3, which already breaks many things. The community needs time to catch up.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-671655550


   > I was going to test myself - I was hoping this would work but wasn't 100% sure. So, the name changes should not be breaking (ideally we should verify across all agent languages to make sure it's not just Java protoc that does this correctly).
   
   I will try to ask them to test one by one :) The activity of .net agent team makes me a little concerned. They are still behind the schedule for supporting 8.x skywalking


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] ZackButcher commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
ZackButcher commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-671409348


   > the compiling in Java still passed. But I haven't verified the e2e. Is that what you expected?
   
   I was going to test myself - I was hoping this would work but wasn't 100% sure. So, the name changes should not be breaking (ideally we should verify across all agent languages to make sure it's not just Java protoc that does this correctly).


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] dio commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
dio commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-670984844


   Seems like it is easier to introduce a new set of APIs?


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-672762426


   > The project already uses GitHub actions for its normal CI, right?
   
   Yes.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] kezhenxu94 commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
kezhenxu94 commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-671659991


   Python and NodeJS agents are +1 to the proposed changes, we only need a little code changes (or even no code changes), will inspect more but +1 in short


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-747410755


   @ZackButcher We add `package` for cpp, https://github.com/apache/skywalking-data-collect-protocol/pull/37.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-670782679


   Hi, Zack. It is good for me to enhance the document for those protos. And I think you will need CI, such as GitHub action, to check those protobuf, right?
   
   I could open it for now.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng edited a comment on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng edited a comment on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-671032254


   Hi, @dio @ZackButcher I did a small experience.
   
   I changed SegmentObject to , 
   ```proto
   message SegmentObject {
       // A string id represents the whole trace.
       string trace_id = 1;
       // A unique id represents this segment. Other segments could use this id to reference as a child segment.
       string trace_segment_id = 2;
   ```
   the compiling in Java still passed. But I haven't verified the e2e. Is that what you expected?


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng closed issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng closed issue #5266:
URL: https://github.com/apache/skywalking/issues/5266


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-822877562


   With namespace, cpp SDK and Envoy integration are working now, we are closing this.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng edited a comment on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng edited a comment on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-670810670


   Zack, one more thing, there is naming style in your linter logs, please make sure the refactor would NOT break the generated fields and methods.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng edited a comment on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng edited a comment on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-670989879


   What new API? Envoy existing proto is in sake case, but generated java codes are camel case. But still, it is high risk.
   
   Anyway. Breaking generated codes a would affect the existing agent codes a lot. There are too many agents, I expect don't change in that case.
   
   @dio I think this is not a block for envoy side, right?


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng edited a comment on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng edited a comment on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-671006364


   Adding a package declerance should not affact java. Could you give me an example of the trace proto? I could change and do a test locally, to see whethet there is a chance of not using new API.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-671032254


   Hi, @dio @ZackButcher I did a small experience.
   
   I changed SegmentObject to `segment_object`, the compiling in Java still passed. But I haven't verified the e2e. Is that what you expected?


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] ZackButcher commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
ZackButcher commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-672373578


   > Hi, Zack. It is good for me to enhance the document for those protos. And I think you will need CI, such as GitHub action, to check those protobuf, right?
   
   The project already uses GitHub actions for its normal CI, right? Then yes, just an empty one to start with works.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-671006364


   I will do a test whether there is a chance to change the naming style.
   
   Also, a package declerance should not affact java. Could you give me an example of the trace proto? I could change and do a test locally, to see whethet there is a chance of not using new API.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-670810670


   Zack, one more thing, there is naming style in your linter logs, please make sure the refactor would break the generated fields and methods.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [skywalking] wu-sheng commented on issue #5266: Clean Up and Improve protobufs in skywalking-data-collect-protocol

Posted by GitBox <gi...@apache.org>.
wu-sheng commented on issue #5266:
URL: https://github.com/apache/skywalking/issues/5266#issuecomment-670989879


   What new API? Envoy existing proto is in sake case, but generated java codes are camel case.
   
   Anyway. Breaking generated codes a would affect the existing agent codes a lot. There are too many agents, I expect don't change in that case.
   
   @dio I think this is not a block for envoy side, right?


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org