Files
crawlab/grpc/proto/services/task_service.proto
Marvin Zhang 8c2c23d9b6 feat: Update gRPC service definitions and implement CheckProcess method
- Downgraded protoc-gen-go-grpc and protoc versions for compatibility.
- Added CheckProcess method to TaskService with corresponding request and response types.
- Updated Subscribe and Connect methods to use new generic client stream types.
- Refactored server and client implementations for Subscribe and Connect methods.
- Ensured backward compatibility by maintaining existing method signatures where applicable.
- Added necessary handler for CheckProcess in the service descriptor.
2025-09-17 10:37:03 +08:00

99 lines
2.1 KiB
Protocol Buffer

syntax = "proto3";
package grpc;
option go_package = ".;grpc";
message TaskServiceSubscribeRequest {
string task_id = 1;
}
enum TaskServiceSubscribeCode {
CANCEL = 0;
}
message TaskServiceSubscribeResponse {
TaskServiceSubscribeCode code = 1;
string task_id = 2;
bool force = 3;
}
enum TaskServiceConnectCode {
INSERT_DATA = 0;
INSERT_LOGS = 1;
PING = 2;
}
message TaskServiceConnectRequest {
TaskServiceConnectCode code = 1;
string task_id = 2;
bytes data = 3;
}
enum TaskServiceConnectResponseCode {
CONNECT_SUCCESS = 0;
CONNECT_ERROR = 1;
CONNECT_INVALID_REQUEST = 2;
CONNECT_TASK_NOT_FOUND = 3;
}
message TaskServiceConnectResponse {
TaskServiceConnectResponseCode code = 1;
string message = 2;
string error = 3;
}
message TaskServiceFetchTaskRequest {
string node_key = 1;
}
message TaskServiceFetchTaskResponse {
string task_id = 2;
}
message TaskServiceSendNotificationRequest {
string node_key = 1;
string task_id = 2;
}
enum TaskServiceSendNotificationResponseCode {
NOTIFICATION_SUCCESS = 0;
NOTIFICATION_ERROR = 1;
NOTIFICATION_DISABLED = 2;
}
message TaskServiceSendNotificationResponse {
TaskServiceSendNotificationResponseCode code = 1;
string message = 2;
string error = 3;
}
message TaskServiceCheckProcessRequest {
string task_id = 1;
int32 pid = 2;
}
enum ProcessStatus {
PROCESS_UNKNOWN = 0;
PROCESS_RUNNING = 1;
PROCESS_FINISHED = 2;
PROCESS_ERROR = 3;
PROCESS_NOT_FOUND = 4;
PROCESS_ZOMBIE = 5;
}
message TaskServiceCheckProcessResponse {
string task_id = 1;
int32 pid = 2;
ProcessStatus status = 3;
int32 exit_code = 4;
string error_message = 5;
}
service TaskService {
rpc Subscribe(TaskServiceSubscribeRequest) returns (stream TaskServiceSubscribeResponse){};
rpc Connect(stream TaskServiceConnectRequest) returns (stream TaskServiceConnectResponse){};
rpc FetchTask(TaskServiceFetchTaskRequest) returns (TaskServiceFetchTaskResponse){};
rpc SendNotification(TaskServiceSendNotificationRequest) returns (TaskServiceSendNotificationResponse){};
rpc CheckProcess(TaskServiceCheckProcessRequest) returns (TaskServiceCheckProcessResponse){};
}