client.proto 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. syntax = "proto3";
  2. option go_package = ".;linux";
  3. package linux;
  4. import "google/protobuf/empty.proto";
  5. service Client {
  6. rpc Ping(google.protobuf.Empty) returns (PingResp){}
  7. rpc Init(InitReq) returns (SuccessMsg){}
  8. rpc Memory(MemoryReq) returns(SuccessMsg){}
  9. rpc Network(NetReq) returns(SuccessMsg){}
  10. rpc CPUPercent(CPUReq) returns (SuccessMsg) {}
  11. }
  12. //default id
  13. message Server {
  14. string id = 1;
  15. string secret = 2;
  16. int64 timestamp = 3;
  17. }
  18. // default success msg
  19. message SuccessMsg {
  20. int32 success = 1;
  21. string msg = 2;
  22. }
  23. // Ping
  24. message PingResp {
  25. int32 success = 1;
  26. }
  27. // Init
  28. message InitReq {
  29. Server server = 1;
  30. repeated CPUInit CPU = 2; // repeated 重复的(数组)
  31. }
  32. message CPUInit {
  33. string name = 1;
  34. int32 count = 2;
  35. double mhz = 3;
  36. int32 cacheSize = 4;
  37. }
  38. // memory
  39. message MemoryReq {
  40. Server server = 1;
  41. uint64 total = 2;
  42. uint64 free = 3;
  43. uint64 used = 4;
  44. uint64 cached = 5;
  45. double usedPercent = 6;
  46. }
  47. // network io
  48. message NetReq {
  49. Server server = 1;
  50. uint64 bytesRecv = 2;
  51. uint64 bytesSent = 3;
  52. uint64 packetsRecv = 4;
  53. uint64 packetsSent = 5;
  54. }
  55. // cpu percent
  56. message CPUReq {
  57. Server server = 1;
  58. double percent = 2;
  59. }