100 lines
2.3 KiB
Protocol Buffer
100 lines
2.3 KiB
Protocol Buffer
syntax = "proto3";
|
||
|
||
// auth验证请求和应答
|
||
|
||
message AuthRequest {
|
||
string uuid = 1;
|
||
string username = 2;
|
||
string salt = 4;
|
||
string token = 5;
|
||
uint32 timestamp = 6;
|
||
}
|
||
|
||
message AuthReply {
|
||
uint32 code = 1;
|
||
string message = 2;
|
||
}
|
||
|
||
// 不需要响应的,基于pub/sub的机制实现远程调用; 不需要指定service_id
|
||
// service_id主动订阅消息, 基于广播通讯
|
||
message Pub {
|
||
string topic = 1;
|
||
bytes content = 2;
|
||
}
|
||
|
||
///// 服务器主动推送的消息
|
||
|
||
message AsyncCallReply {
|
||
// 0: 表示失败,1: 成功
|
||
uint32 code = 1;
|
||
string result = 2;
|
||
string message = 3;
|
||
}
|
||
|
||
// 部署逻辑
|
||
message Deploy {
|
||
uint32 task_id = 1;
|
||
// json
|
||
string config = 2;
|
||
}
|
||
|
||
// 获取task的logs
|
||
message FetchTaskLog {
|
||
uint32 task_id = 1;
|
||
}
|
||
|
||
// 参数配置
|
||
message ServiceConfig {
|
||
string service_id = 1;
|
||
string config_json = 2;
|
||
uint32 timeout = 3;
|
||
}
|
||
|
||
/////// EFKA主动上报的消息类型
|
||
|
||
// 数据传输
|
||
message Data {
|
||
string service_id = 1;
|
||
string device_uuid = 2;
|
||
string route_key = 3;
|
||
// measurement[,tag_key=tag_value...] field_key=field_value[,field_key2=field_value2...] [timestamp]
|
||
bytes metric = 4;
|
||
}
|
||
|
||
message Event {
|
||
string service_id = 1;
|
||
uint32 event_type = 2;
|
||
string params = 3;
|
||
}
|
||
|
||
//#{<<"adcode">> => 0,<<"boot_time">> => 18256077,<<"city">> => <<>>,
|
||
// <<"cpu_core">> => 2,
|
||
// <<"cpu_load">> => 0,<<"cpu_temperature">> => 43.75,
|
||
// <<"disk">> => #{<<"total">> => 7129,<<"used">> => 6074},
|
||
// <<"efka_version">> => <<"1.0.0">>,
|
||
// <<"interfaces">> => [],
|
||
// <<"ips">> => [<<"10.68.152.142/22">>,<<"10.20.1.202/24">>],
|
||
// <<"kernel_arch">> => <<"Linux openeic 4.4.194 #14 SMP PREEMPT Fri Aug 2 11:31:15 CST 2024 aarch64 GNU/Linux\n">>,
|
||
// <<"memory">> => #{<<"total">> => 990,<<"used">> => 80},
|
||
// <<"province">> => <<>>}
|
||
|
||
// 定义ping消息格式
|
||
|
||
message Ping {
|
||
string adcode = 1;
|
||
uint32 boot_time = 2;
|
||
string province = 3;
|
||
string city = 4;
|
||
string efka_version = 5;
|
||
string kernel_arch = 6;
|
||
repeated string ips = 7;
|
||
// cpu
|
||
uint32 cpu_core = 8;
|
||
uint32 cpu_load = 9;
|
||
float cpu_temperature = 10;
|
||
// 存储格式为数组: [total, used]
|
||
repeated int32 disk = 11;
|
||
repeated int32 memory = 12;
|
||
// 接口信息的定义: 每个接口的信息, 采用json格式传输,没有办法提前定义
|
||
string interfaces = 13;
|
||
} |