You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

pcm-monitoring.api 2.6 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. syntax = "v1"
  2. type CreateAlertRuleReq {
  3. CLusterId string `json:"clusterId"`
  4. ClusterName string `json:"clusterName"`
  5. Name string `json:"name"`
  6. PromQL string `json:"promQL"`
  7. Duration string `json:"duration"`
  8. Annotations string `json:"annotations,optional"`
  9. AlertLevel string `json:"alertLevel"`
  10. AlertType string `json:"alertType"`
  11. }
  12. type DeleteAlertRuleReq {
  13. Id int64 `form:"id"`
  14. ClusterName string `form:"clusterName"`
  15. Name string `form:"name"`
  16. }
  17. type (
  18. AlertRulesReq {
  19. AlertType string `form:"alertType"`
  20. AdapterId string `form:"adapterId,optional"`
  21. ClusterId string `form:"clusterId,optional"`
  22. }
  23. AlertRulesResp {
  24. alertRules []AlertRule `json:"alertRules"`
  25. }
  26. AlertRule {
  27. Id int64 `json:"id"`
  28. ClusterName string `json:"clusterName"`
  29. Name string `json:"name"`
  30. AlertType string `json:"alertType"`
  31. PromQL string `json:"promQL"`
  32. Duration string `json:"duration"`
  33. Annotations string `json:"annotations"`
  34. AlertLevel string `json:"alertLevel"`
  35. }
  36. )
  37. type (
  38. nodesLoadTopReq {
  39. ClusterName string `form:"clusterName"`
  40. Metrics string `form:"metrics"`
  41. }
  42. nodesLoadTopResp {
  43. code int `json:"code"`
  44. data interface{} `json:"data"`
  45. msg string `json:"msg"`
  46. }
  47. )
  48. type (
  49. alertListReq {
  50. alertType string `form:"alertType"`
  51. adapterId string `form:"adapterId,optional"`
  52. clusterId string `form:"clusterId,optional"`
  53. }
  54. alertListResp {
  55. alertMap map[string]interface{} `json:"alertMap"`
  56. }
  57. )
  58. type SyncClusterAlertReq {
  59. AlertRecordsMap map[string]interface{} `json:"alertRecordsMap"`
  60. }
  61. type (
  62. taskNumReq {
  63. clusterId string `form:"clusterId"`
  64. }
  65. taskNumResp {
  66. current int `json:"current"`
  67. today int `json:"today"`
  68. history int `json:"history"`
  69. failed int `json:"failed"`
  70. }
  71. )
  72. type (
  73. adapterInfoReq {
  74. clusterId string `form:"clusterId"`
  75. }
  76. adapterInfoResp {
  77. name string `json:"name"`
  78. version string `json:"version"`
  79. }
  80. )
  81. type (
  82. scheduleSituationResp {
  83. nodes []NodeRegion `json:"nodes"`
  84. links []Link `json:"links"`
  85. categories []Category `json:"categories"`
  86. }
  87. NodeRegion {
  88. id string `json:"id"`
  89. name string `json:"name"`
  90. category int `json:"category"`
  91. value int `json:"value"`
  92. }
  93. Link {
  94. source string `json:"source"`
  95. target string `json:"target"`
  96. }
  97. Category {
  98. name string `json:"name"`
  99. }
  100. )

PCM is positioned as Software stack over Cloud, aiming to build the standards and ecology of heterogeneous cloud collaboration for JCC in a non intrusive and autonomous peer-to-peer manner.