kezhenxu94 commented on code in PR #10884: URL: https://github.com/apache/skywalking/pull/10884#discussion_r1223897607
########## oap-server/ai-pipeline/src/main/proto/ai_http_uri_recognition.proto: ########## @@ -0,0 +1,63 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +syntax = "proto3"; + +import "google/protobuf/empty.proto"; + + +option java_multiple_files = true; +option java_package = "org.apache.skywalking.oap.server.ai.pipeline.grpc"; + +service HttpUriRecognitionService { + // Sync for the pattern recognition dictionary. + rpc fetchAllPatterns(HttpUriRecognitionSyncRequest) returns (HttpUriRecognitionResponse) {} + // Feed new raw data and matched patterns to the AI-server. + rpc feedRawData(HttpUriRecognitionRequest) returns (google.protobuf.Empty) {} +} + +message HttpUriRecognitionSyncRequest { + string service = 1; + // The version of pattern dictionary at the OAP side. + string version = 2; +} + +message HttpUriRecognitionRequest { + string service = 1; + repeated HttpRawUri unrecognizedUris = 2; +} + +message HttpRawUri { + string name = 1; + int64 matchedCounter = 2; +} + +message HttpUriRecognitionResponse { + repeated Pattern patterns = 1; + // The version of pattern dictionary at the AI-server side. + // If it is as same as HttpUriRecognitionSyncRequest#version, + // patterns could be empty as nothing should be updated. + string version = 2; Review Comment: > This version and HttpUriRecognitionSyncRequest#version were my proposed. @Superskyyy I hope this is good enough for you. Does it make sense to use `string` as the type of `version`? I'd expect it to be a number so that we can compare (conveniently), tho you might claim we can compare strings too but we can only compare strings equivalence, with number we can compare versions are new/old. -- 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. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
