describe_multi_container_group_metric.go 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442
  1. //Licensed under the Apache License, Version 2.0 (the "License");
  2. //you may not use this file except in compliance with the License.
  3. //You may obtain a copy of the License at
  4. //
  5. //http://www.apache.org/licenses/LICENSE-2.0
  6. //
  7. //Unless required by applicable law or agreed to in writing, software
  8. //distributed under the License is distributed on an "AS IS" BASIS,
  9. //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. //See the License for the specific language governing permissions and
  11. //limitations under the License.
  12. //
  13. // Code generated by Alibaba Cloud SDK Code Generator.
  14. // Changes may cause incorrect behavior and will be lost if the code is regenerated.
  15. package eci
  16. import (
  17. "github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
  18. "github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
  19. )
  20. // DescribeMultiContainerGroupMetric invokes the eci.DescribeMultiContainerGroupMetric API synchronously
  21. // api document: https://help.aliyun.com/api/eci/describemulticontainergroupmetric.html
  22. func (client *Client) DescribeMultiContainerGroupMetric(request *DescribeMultiContainerGroupMetricRequest) (response *DescribeMultiContainerGroupMetricResponse, err error) {
  23. response = CreateDescribeMultiContainerGroupMetricResponse()
  24. err = client.DoAction(request, response)
  25. return
  26. }
  27. // DescribeMultiContainerGroupMetricWithChan invokes the eci.DescribeMultiContainerGroupMetric API asynchronously
  28. // api document: https://help.aliyun.com/api/eci/describemulticontainergroupmetric.html
  29. // asynchronous document: https://help.aliyun.com/document_detail/66220.html
  30. func (client *Client) DescribeMultiContainerGroupMetricWithChan(request *DescribeMultiContainerGroupMetricRequest) (<-chan *DescribeMultiContainerGroupMetricResponse, <-chan error) {
  31. responseChan := make(chan *DescribeMultiContainerGroupMetricResponse, 1)
  32. errChan := make(chan error, 1)
  33. err := client.AddAsyncTask(func() {
  34. defer close(responseChan)
  35. defer close(errChan)
  36. response, err := client.DescribeMultiContainerGroupMetric(request)
  37. if err != nil {
  38. errChan <- err
  39. } else {
  40. responseChan <- response
  41. }
  42. })
  43. if err != nil {
  44. errChan <- err
  45. close(responseChan)
  46. close(errChan)
  47. }
  48. return responseChan, errChan
  49. }
  50. // DescribeMultiContainerGroupMetricWithCallback invokes the eci.DescribeMultiContainerGroupMetric API asynchronously
  51. // api document: https://help.aliyun.com/api/eci/describemulticontainergroupmetric.html
  52. // asynchronous document: https://help.aliyun.com/document_detail/66220.html
  53. func (client *Client) DescribeMultiContainerGroupMetricWithCallback(request *DescribeMultiContainerGroupMetricRequest, callback func(response *DescribeMultiContainerGroupMetricResponse, err error)) <-chan int {
  54. result := make(chan int, 1)
  55. err := client.AddAsyncTask(func() {
  56. var response *DescribeMultiContainerGroupMetricResponse
  57. var err error
  58. defer close(result)
  59. response, err = client.DescribeMultiContainerGroupMetric(request)
  60. callback(response, err)
  61. result <- 1
  62. })
  63. if err != nil {
  64. defer close(result)
  65. callback(nil, err)
  66. result <- 0
  67. }
  68. return result
  69. }
  70. // DescribeMultiContainerGroupMetricRequest is the request struct for api DescribeMultiContainerGroupMetric
  71. type DescribeMultiContainerGroupMetricRequest struct {
  72. *requests.RpcRequest
  73. OwnerId requests.Integer `position:"Query" name:"OwnerId"`
  74. ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
  75. ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
  76. OwnerAccount string `position:"Query" name:"OwnerAccount"`
  77. RegionId string `position:"Query" name:"RegionId"`
  78. ContainerGroupIds string `position:"Query" name:"ContainerGroupIds"`
  79. ResourceGroupId string `position:"Query" name:"ResourceGroupId"`
  80. MetricType string `position:"Query" name:"MetricType"`
  81. }
  82. // DescribeMultiContainerGroupMetricResponse is the response struct for api DescribeMultiContainerGroupMetric
  83. type DescribeMultiContainerGroupMetricResponse struct {
  84. *responses.BaseResponse
  85. RequestId string `json:"RequestId" xml:"RequestId"`
  86. MonitorDatas []DescribeMultiContainerGroupMetricRecord0 `json:"MonitorDatas" xml:"MonitorDatas"`
  87. }
  88. type DescribeMultiContainerGroupMetricRecord0 struct {
  89. ContainerGroupId string `json:"ContainerGroupId" xml:"ContainerGroupId"`
  90. Records []DescribeMultiContainerGroupMetricPodStat1 `json:"Records" xml:"Records"`
  91. ContainerInfos []DescribeMultiContainerGroupMetricContainerInfo1 `json:"ContainerInfos" xml:"ContainerInfos"`
  92. }
  93. type DescribeMultiContainerGroupMetricPodStat1 struct {
  94. Timestamp string `json:"Timestamp" xml:"Timestamp"`
  95. Containers []DescribeMultiContainerGroupMetricContainer2 `json:"Containers" xml:"Containers"`
  96. CPU DescribeMultiContainerGroupMetricCPU2 `json:"CPU" xml:"CPU"`
  97. Memory DescribeMultiContainerGroupMetricMemory2 `json:"Memory" xml:"Memory"`
  98. Network DescribeMultiContainerGroupMetricNetwork2 `json:"Network" xml:"Network"`
  99. }
  100. type DescribeMultiContainerGroupMetricContainer2 struct {
  101. Name string `json:"Name" xml:"Name"`
  102. CPU DescribeMultiContainerGroupMetricCPU3 `json:"CPU" xml:"CPU"`
  103. Memory DescribeMultiContainerGroupMetricMemory3 `json:"Memory" xml:"Memory"`
  104. }
  105. type DescribeMultiContainerGroupMetricCPU3 struct {
  106. Limit int64 `json:"Limit" xml:"Limit"`
  107. Load int64 `json:"Load" xml:"Load"`
  108. UsageCoreNanoSeconds int64 `json:"UsageCoreNanoSeconds" xml:"UsageCoreNanoSeconds"`
  109. UsageNanoCores int64 `json:"UsageNanoCores" xml:"UsageNanoCores"`
  110. }
  111. type DescribeMultiContainerGroupMetricMemory3 struct {
  112. AvailableBytes int64 `json:"AvailableBytes" xml:"AvailableBytes"`
  113. UsageBytes int64 `json:"UsageBytes" xml:"UsageBytes"`
  114. Cache int64 `json:"Cache" xml:"Cache"`
  115. WorkingSet int64 `json:"WorkingSet" xml:"WorkingSet"`
  116. Rss int64 `json:"Rss" xml:"Rss"`
  117. }
  118. type DescribeMultiContainerGroupMetricCPU2 struct {
  119. Limit int64 `json:"Limit" xml:"Limit"`
  120. Load int64 `json:"Load" xml:"Load"`
  121. UsageCoreNanoSeconds int64 `json:"UsageCoreNanoSeconds" xml:"UsageCoreNanoSeconds"`
  122. UsageNanoCores int64 `json:"UsageNanoCores" xml:"UsageNanoCores"`
  123. }
  124. type DescribeMultiContainerGroupMetricMemory2 struct {
  125. AvailableBytes int64 `json:"AvailableBytes" xml:"AvailableBytes"`
  126. UsageBytes int64 `json:"UsageBytes" xml:"UsageBytes"`
  127. Cache int64 `json:"Cache" xml:"Cache"`
  128. WorkingSet int64 `json:"WorkingSet" xml:"WorkingSet"`
  129. Rss int64 `json:"Rss" xml:"Rss"`
  130. }
  131. type DescribeMultiContainerGroupMetricNetwork2 struct {
  132. Interfaces []DescribeMultiContainerGroupMetricInterface3 `json:"Interfaces" xml:"Interfaces"`
  133. }
  134. type DescribeMultiContainerGroupMetricInterface3 struct {
  135. TxBytes int64 `json:"TxBytes" xml:"TxBytes"`
  136. RxBytes int64 `json:"RxBytes" xml:"RxBytes"`
  137. TxErrors int64 `json:"TxErrors" xml:"TxErrors"`
  138. RxErrors int64 `json:"RxErrors" xml:"RxErrors"`
  139. Name string `json:"Name" xml:"Name"`
  140. }
  141. type DescribeMultiContainerGroupMetricContainerInfo1 struct {
  142. Id string `json:"Id" xml:"Id"`
  143. Name string `json:"Name" xml:"Name"`
  144. Namespace string `json:"Namespace" xml:"Namespace"`
  145. Labels string `json:"Labels" xml:"Labels"`
  146. ContainerStats []DescribeMultiContainerGroupMetricContainerStats2 `json:"ContainerStats" xml:"ContainerStats"`
  147. Aliases []string `json:"Aliases" xml:"Aliases"`
  148. ContainerSpec DescribeMultiContainerGroupMetricContainerSpec2 `json:"ContainerSpec" xml:"ContainerSpec"`
  149. }
  150. type DescribeMultiContainerGroupMetricContainerStats2 struct {
  151. Timestamp string `json:"Timestamp" xml:"Timestamp"`
  152. FsStats []DescribeMultiContainerGroupMetricFsStats3 `json:"FsStats" xml:"FsStats"`
  153. AcceleratorStats []DescribeMultiContainerGroupMetricAcceleratorStats3 `json:"AcceleratorStats" xml:"AcceleratorStats"`
  154. CpuStats DescribeMultiContainerGroupMetricCpuStats3 `json:"CpuStats" xml:"CpuStats"`
  155. DiskIoStats DescribeMultiContainerGroupMetricDiskIoStats3 `json:"DiskIoStats" xml:"DiskIoStats"`
  156. MemoryStats DescribeMultiContainerGroupMetricMemoryStats3 `json:"MemoryStats" xml:"MemoryStats"`
  157. NetworkStats DescribeMultiContainerGroupMetricNetworkStats3 `json:"NetworkStats" xml:"NetworkStats"`
  158. TaskStats DescribeMultiContainerGroupMetricTaskStats3 `json:"TaskStats" xml:"TaskStats"`
  159. }
  160. type DescribeMultiContainerGroupMetricFsStats3 struct {
  161. Device string `json:"Device" xml:"Device"`
  162. Type string `json:"Type" xml:"Type"`
  163. Limit int64 `json:"Limit" xml:"Limit"`
  164. Usage int64 `json:"Usage" xml:"Usage"`
  165. BaseUsage int64 `json:"BaseUsage" xml:"BaseUsage"`
  166. Available int64 `json:"Available" xml:"Available"`
  167. HasInodes bool `json:"HasInodes" xml:"HasInodes"`
  168. Inodes int64 `json:"Inodes" xml:"Inodes"`
  169. InodesFree int64 `json:"InodesFree" xml:"InodesFree"`
  170. ReadsCompleted int64 `json:"ReadsCompleted" xml:"ReadsCompleted"`
  171. ReadsMerged int64 `json:"ReadsMerged" xml:"ReadsMerged"`
  172. SectorsRead int64 `json:"SectorsRead" xml:"SectorsRead"`
  173. ReadTime int64 `json:"ReadTime" xml:"ReadTime"`
  174. WritesCompleted int64 `json:"WritesCompleted" xml:"WritesCompleted"`
  175. WritesMerged int64 `json:"WritesMerged" xml:"WritesMerged"`
  176. SectorsWritten int64 `json:"SectorsWritten" xml:"SectorsWritten"`
  177. WriteTime int64 `json:"WriteTime" xml:"WriteTime"`
  178. IoInProgress int64 `json:"IoInProgress" xml:"IoInProgress"`
  179. IoTime int64 `json:"IoTime" xml:"IoTime"`
  180. WeightedIoTime int64 `json:"WeightedIoTime" xml:"WeightedIoTime"`
  181. }
  182. type DescribeMultiContainerGroupMetricAcceleratorStats3 struct {
  183. Id string `json:"Id" xml:"Id"`
  184. Make string `json:"Make" xml:"Make"`
  185. Model string `json:"Model" xml:"Model"`
  186. MemoryTotal int64 `json:"MemoryTotal" xml:"MemoryTotal"`
  187. MemoryUsed int64 `json:"MemoryUsed" xml:"MemoryUsed"`
  188. DutyCycle int64 `json:"DutyCycle" xml:"DutyCycle"`
  189. }
  190. type DescribeMultiContainerGroupMetricCpuStats3 struct {
  191. LoadAverage int64 `json:"LoadAverage" xml:"LoadAverage"`
  192. CpuUsage DescribeMultiContainerGroupMetricCpuUsage4 `json:"CpuUsage" xml:"CpuUsage"`
  193. CpuCFS DescribeMultiContainerGroupMetricCpuCFS4 `json:"CpuCFS" xml:"CpuCFS"`
  194. }
  195. type DescribeMultiContainerGroupMetricCpuUsage4 struct {
  196. Total int64 `json:"Total" xml:"Total"`
  197. User int64 `json:"User" xml:"User"`
  198. System int64 `json:"System" xml:"System"`
  199. PerCpuUsages []string `json:"PerCpuUsages" xml:"PerCpuUsages"`
  200. }
  201. type DescribeMultiContainerGroupMetricCpuCFS4 struct {
  202. Periods int64 `json:"Periods" xml:"Periods"`
  203. ThrottledPeriods int64 `json:"ThrottledPeriods" xml:"ThrottledPeriods"`
  204. ThrottledTime int64 `json:"ThrottledTime" xml:"ThrottledTime"`
  205. }
  206. type DescribeMultiContainerGroupMetricDiskIoStats3 struct {
  207. IoServiceBytes []DescribeMultiContainerGroupMetricIoServiceByte4 `json:"IoServiceBytes" xml:"IoServiceBytes"`
  208. IoServiced []DescribeMultiContainerGroupMetricIoServiced4 `json:"IoServiced" xml:"IoServiced"`
  209. IoQueued []DescribeMultiContainerGroupMetricIoQueued4 `json:"IoQueued" xml:"IoQueued"`
  210. Sectors []DescribeMultiContainerGroupMetricSector4 `json:"Sectors" xml:"Sectors"`
  211. IoServiceTime []DescribeMultiContainerGroupMetricIoServiceTime4 `json:"IoServiceTime" xml:"IoServiceTime"`
  212. IoWaitTime []DescribeMultiContainerGroupMetricIoWaitTime4 `json:"IoWaitTime" xml:"IoWaitTime"`
  213. IoMerged []DescribeMultiContainerGroupMetricIoMerged4 `json:"IoMerged" xml:"IoMerged"`
  214. IoTime []DescribeMultiContainerGroupMetricIoTime4 `json:"IoTime" xml:"IoTime"`
  215. }
  216. type DescribeMultiContainerGroupMetricIoServiceByte4 struct {
  217. Device string `json:"Device" xml:"Device"`
  218. Major int64 `json:"Major" xml:"Major"`
  219. Minor int64 `json:"Minor" xml:"Minor"`
  220. Stats string `json:"Stats" xml:"Stats"`
  221. }
  222. type DescribeMultiContainerGroupMetricIoServiced4 struct {
  223. Device string `json:"Device" xml:"Device"`
  224. Major int64 `json:"Major" xml:"Major"`
  225. Minor int64 `json:"Minor" xml:"Minor"`
  226. Stats string `json:"Stats" xml:"Stats"`
  227. }
  228. type DescribeMultiContainerGroupMetricIoQueued4 struct {
  229. Device string `json:"Device" xml:"Device"`
  230. Major int64 `json:"Major" xml:"Major"`
  231. Minor int64 `json:"Minor" xml:"Minor"`
  232. Stats string `json:"Stats" xml:"Stats"`
  233. }
  234. type DescribeMultiContainerGroupMetricSector4 struct {
  235. Device string `json:"Device" xml:"Device"`
  236. Major int64 `json:"Major" xml:"Major"`
  237. Minor int64 `json:"Minor" xml:"Minor"`
  238. Stats string `json:"Stats" xml:"Stats"`
  239. }
  240. type DescribeMultiContainerGroupMetricIoServiceTime4 struct {
  241. Device string `json:"Device" xml:"Device"`
  242. Major int64 `json:"Major" xml:"Major"`
  243. Minor int64 `json:"Minor" xml:"Minor"`
  244. Stats string `json:"Stats" xml:"Stats"`
  245. }
  246. type DescribeMultiContainerGroupMetricIoWaitTime4 struct {
  247. Device string `json:"Device" xml:"Device"`
  248. Major int64 `json:"Major" xml:"Major"`
  249. Minor int64 `json:"Minor" xml:"Minor"`
  250. Stats string `json:"Stats" xml:"Stats"`
  251. }
  252. type DescribeMultiContainerGroupMetricIoMerged4 struct {
  253. Device string `json:"Device" xml:"Device"`
  254. Major int64 `json:"Major" xml:"Major"`
  255. Minor int64 `json:"Minor" xml:"Minor"`
  256. Stats string `json:"Stats" xml:"Stats"`
  257. }
  258. type DescribeMultiContainerGroupMetricIoTime4 struct {
  259. Device string `json:"Device" xml:"Device"`
  260. Major int64 `json:"Major" xml:"Major"`
  261. Minor int64 `json:"Minor" xml:"Minor"`
  262. Stats string `json:"Stats" xml:"Stats"`
  263. }
  264. type DescribeMultiContainerGroupMetricMemoryStats3 struct {
  265. Usage int64 `json:"Usage" xml:"Usage"`
  266. MaxUsage int64 `json:"MaxUsage" xml:"MaxUsage"`
  267. Cache int64 `json:"Cache" xml:"Cache"`
  268. Rss int64 `json:"Rss" xml:"Rss"`
  269. Swap int64 `json:"Swap" xml:"Swap"`
  270. WorkingSet int64 `json:"WorkingSet" xml:"WorkingSet"`
  271. FailCnt int64 `json:"FailCnt" xml:"FailCnt"`
  272. ContainerData DescribeMultiContainerGroupMetricContainerData4 `json:"ContainerData" xml:"ContainerData"`
  273. HierarchicalData DescribeMultiContainerGroupMetricHierarchicalData4 `json:"HierarchicalData" xml:"HierarchicalData"`
  274. }
  275. type DescribeMultiContainerGroupMetricContainerData4 struct {
  276. PgFault int64 `json:"PgFault" xml:"PgFault"`
  277. PgmajFault int64 `json:"PgmajFault" xml:"PgmajFault"`
  278. }
  279. type DescribeMultiContainerGroupMetricHierarchicalData4 struct {
  280. PgFault int64 `json:"PgFault" xml:"PgFault"`
  281. PgmajFault int64 `json:"PgmajFault" xml:"PgmajFault"`
  282. }
  283. type DescribeMultiContainerGroupMetricNetworkStats3 struct {
  284. Name string `json:"Name" xml:"Name"`
  285. RxBytes int64 `json:"RxBytes" xml:"RxBytes"`
  286. RxPackets int64 `json:"RxPackets" xml:"RxPackets"`
  287. RxErrors int64 `json:"RxErrors" xml:"RxErrors"`
  288. RxDropped int64 `json:"RxDropped" xml:"RxDropped"`
  289. TxBytes int64 `json:"TxBytes" xml:"TxBytes"`
  290. TxPackets int64 `json:"TxPackets" xml:"TxPackets"`
  291. TxDropped int64 `json:"TxDropped" xml:"TxDropped"`
  292. TxErrors int64 `json:"TxErrors" xml:"TxErrors"`
  293. InterfaceStats []DescribeMultiContainerGroupMetricInterfaceStats4 `json:"InterfaceStats" xml:"InterfaceStats"`
  294. Tcp DescribeMultiContainerGroupMetricTcp4 `json:"Tcp" xml:"Tcp"`
  295. Tcp6 DescribeMultiContainerGroupMetricTcp64 `json:"Tcp6" xml:"Tcp6"`
  296. Udp DescribeMultiContainerGroupMetricUdp4 `json:"Udp" xml:"Udp"`
  297. Udp6 DescribeMultiContainerGroupMetricUdp64 `json:"Udp6" xml:"Udp6"`
  298. }
  299. type DescribeMultiContainerGroupMetricInterfaceStats4 struct {
  300. Name string `json:"Name" xml:"Name"`
  301. RxBytes int64 `json:"RxBytes" xml:"RxBytes"`
  302. RxPackets int64 `json:"RxPackets" xml:"RxPackets"`
  303. RxErrors int64 `json:"RxErrors" xml:"RxErrors"`
  304. RxDropped int64 `json:"RxDropped" xml:"RxDropped"`
  305. TxBytes int64 `json:"TxBytes" xml:"TxBytes"`
  306. TxPackets int64 `json:"TxPackets" xml:"TxPackets"`
  307. TxDropped int64 `json:"TxDropped" xml:"TxDropped"`
  308. TxErrors int64 `json:"TxErrors" xml:"TxErrors"`
  309. }
  310. type DescribeMultiContainerGroupMetricTcp4 struct {
  311. Established int64 `json:"Established" xml:"Established"`
  312. SynSent int64 `json:"SynSent" xml:"SynSent"`
  313. SynRecv int64 `json:"SynRecv" xml:"SynRecv"`
  314. FinWait1 int64 `json:"FinWait1" xml:"FinWait1"`
  315. FinWait2 int64 `json:"FinWait2" xml:"FinWait2"`
  316. TimeWait int64 `json:"TimeWait" xml:"TimeWait"`
  317. Close int64 `json:"Close" xml:"Close"`
  318. CloseWait int64 `json:"CloseWait" xml:"CloseWait"`
  319. LastAck int64 `json:"LastAck" xml:"LastAck"`
  320. Listen int64 `json:"Listen" xml:"Listen"`
  321. Closing int64 `json:"Closing" xml:"Closing"`
  322. }
  323. type DescribeMultiContainerGroupMetricTcp64 struct {
  324. Established int64 `json:"Established" xml:"Established"`
  325. SynSent int64 `json:"SynSent" xml:"SynSent"`
  326. SynRecv int64 `json:"SynRecv" xml:"SynRecv"`
  327. FinWait1 int64 `json:"FinWait1" xml:"FinWait1"`
  328. FinWait2 int64 `json:"FinWait2" xml:"FinWait2"`
  329. TimeWait int64 `json:"TimeWait" xml:"TimeWait"`
  330. Close int64 `json:"Close" xml:"Close"`
  331. CloseWait int64 `json:"CloseWait" xml:"CloseWait"`
  332. LastAck int64 `json:"LastAck" xml:"LastAck"`
  333. Listen int64 `json:"Listen" xml:"Listen"`
  334. Closing int64 `json:"Closing" xml:"Closing"`
  335. }
  336. type DescribeMultiContainerGroupMetricUdp4 struct {
  337. Listen int64 `json:"Listen" xml:"Listen"`
  338. Dropped int64 `json:"Dropped" xml:"Dropped"`
  339. RxQueued int64 `json:"RxQueued" xml:"RxQueued"`
  340. TxQueued int64 `json:"TxQueued" xml:"TxQueued"`
  341. }
  342. type DescribeMultiContainerGroupMetricUdp64 struct {
  343. Listen int64 `json:"Listen" xml:"Listen"`
  344. Dropped int64 `json:"Dropped" xml:"Dropped"`
  345. RxQueued int64 `json:"RxQueued" xml:"RxQueued"`
  346. TxQueued int64 `json:"TxQueued" xml:"TxQueued"`
  347. }
  348. type DescribeMultiContainerGroupMetricTaskStats3 struct {
  349. NrSleeping int64 `json:"NrSleeping" xml:"NrSleeping"`
  350. NrRunning int64 `json:"NrRunning" xml:"NrRunning"`
  351. NrStopped int64 `json:"NrStopped" xml:"NrStopped"`
  352. NrUninterruptible int64 `json:"NrUninterruptible" xml:"NrUninterruptible"`
  353. NrIoWait int64 `json:"NrIoWait" xml:"NrIoWait"`
  354. }
  355. type DescribeMultiContainerGroupMetricContainerSpec2 struct {
  356. CreationTime string `json:"CreationTime" xml:"CreationTime"`
  357. HasCpu bool `json:"HasCpu" xml:"HasCpu"`
  358. HasMemory bool `json:"HasMemory" xml:"HasMemory"`
  359. HasNetwork bool `json:"HasNetwork" xml:"HasNetwork"`
  360. HasFilesystem bool `json:"HasFilesystem" xml:"HasFilesystem"`
  361. HasDiskIo bool `json:"HasDiskIo" xml:"HasDiskIo"`
  362. HasCustomMetrics bool `json:"HasCustomMetrics" xml:"HasCustomMetrics"`
  363. Image string `json:"Image" xml:"Image"`
  364. Labels string `json:"Labels" xml:"Labels"`
  365. Envs string `json:"Envs" xml:"Envs"`
  366. ContainerCpu DescribeMultiContainerGroupMetricContainerCpu3 `json:"ContainerCpu" xml:"ContainerCpu"`
  367. ContainerMemory DescribeMultiContainerGroupMetricContainerMemory3 `json:"ContainerMemory" xml:"ContainerMemory"`
  368. }
  369. type DescribeMultiContainerGroupMetricContainerCpu3 struct {
  370. Limit int64 `json:"Limit" xml:"Limit"`
  371. MaxLimit int64 `json:"MaxLimit" xml:"MaxLimit"`
  372. Mask string `json:"Mask" xml:"Mask"`
  373. Quota int64 `json:"Quota" xml:"Quota"`
  374. Period int64 `json:"Period" xml:"Period"`
  375. }
  376. type DescribeMultiContainerGroupMetricContainerMemory3 struct {
  377. Limit int64 `json:"Limit" xml:"Limit"`
  378. Reservation int64 `json:"Reservation" xml:"Reservation"`
  379. SwapLimit int64 `json:"SwapLimit" xml:"SwapLimit"`
  380. }
  381. // CreateDescribeMultiContainerGroupMetricRequest creates a request to invoke DescribeMultiContainerGroupMetric API
  382. func CreateDescribeMultiContainerGroupMetricRequest() (request *DescribeMultiContainerGroupMetricRequest) {
  383. request = &DescribeMultiContainerGroupMetricRequest{
  384. RpcRequest: &requests.RpcRequest{},
  385. }
  386. request.InitWithApiInfo("Eci", "2018-08-08", "DescribeMultiContainerGroupMetric", "eci", "openAPI")
  387. return
  388. }
  389. // CreateDescribeMultiContainerGroupMetricResponse creates a response to parse from DescribeMultiContainerGroupMetric response
  390. func CreateDescribeMultiContainerGroupMetricResponse() (response *DescribeMultiContainerGroupMetricResponse) {
  391. response = &DescribeMultiContainerGroupMetricResponse{
  392. BaseResponse: &responses.BaseResponse{},
  393. }
  394. return
  395. }