Files
EdgeCommon/pkg/rpc/protos/service_log.proto

90 lines
1.7 KiB
Protocol Buffer

syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/rpc_messages.proto";
import "models/model_log.proto";
// 审计日志服务
service LogService {
// 创建日志
rpc createLog (CreateLogRequest) returns (CreateLogResponse);
// 计算日志数量
rpc countLogs (CountLogRequest) returns (RPCCountResponse);
// 列出单页日志
rpc listLogs (ListLogsRequest) returns (ListLogsResponse);
// 删除单条
rpc deleteLogPermanently (DeleteLogPermanentlyRequest) returns (RPCSuccess);
// 批量删除
rpc deleteLogsPermanently (DeleteLogsPermanentlyRequest) returns (RPCSuccess);
// 清理
rpc cleanLogsPermanently (CleanLogsPermanentlyRequest) returns (RPCSuccess);
// 计算日志容量大小
rpc sumLogsSize (SumLogsSizeRequest) returns (SumLogsResponse);
}
// 创建日志
message CreateLogRequest {
string level = 1;
string description = 2;
string action = 3;
string ip = 4;
}
message CreateLogResponse {
}
// 计算日志数量
message CountLogRequest {
string dayFrom = 1;
string dayTo = 2;
string keyword = 3;
string userType = 4; // admin|user
}
// 列出单页日志
message ListLogsRequest {
int64 offset = 1;
int64 size = 2;
string dayFrom = 3;
string dayTo = 4;
string keyword = 5;
string userType = 6;
}
message ListLogsResponse {
repeated Log logs = 1;
}
// 删除单条
message DeleteLogPermanentlyRequest {
int64 logId = 1;
}
// 批量删除
message DeleteLogsPermanentlyRequest {
repeated int64 logIds = 1;
}
// 清理
message CleanLogsPermanentlyRequest {
int32 days = 1;
bool clearAll = 2;
}
// 计算日志容量大小
message SumLogsSizeRequest {
}
message SumLogsResponse {
int64 sizeBytes = 1;
}