Beispiel #1
0
        /// <summary>
        /// 查询监控数据
        /// </summary>
        public async Task <ShowMetricDataResponse> ShowMetricDataAsync(ShowMetricDataRequest showMetricDataRequest)
        {
            Dictionary <string, string> urlParam = new Dictionary <string, string>();
            string              urlPath          = HttpUtils.AddUrlPath("/V1.0/{project_id}/metric-data", urlParam);
            SdkRequest          request          = HttpUtils.InitSdkRequest(urlPath, showMetricDataRequest);
            HttpResponseMessage response         = await DoHttpRequestAsync("GET", request);

            return(JsonUtils.DeSerialize <ShowMetricDataResponse>(response));
        }
        /// <summary>
        /// 查询指定时间范围指定指标的指定粒度的监控数据,可以通过参数指定需要查询的数据维度。
        /// </summary>
        /// <param name="cesV1Client"></param>
        private static void ShowMetricData(CesClient cesClient)
        {
            ShowMetricDataRequest showMetricDataRequest = new ShowMetricDataRequest()
            {
                Namespace  = "SYS.ECS",
                MetricName = "cpu_util",
                Dim0       = "instance_id,1639371e-066f-4782-924c-40bd2db3ba07",
                //Dim1 = "",
                //Dim2 = "",
                From   = 1587014357000,
                To     = 1587017957000,
                Period = 1,
                Filter = ShowMetricDataRequest.FilterEnum.AVERAGE
            };

            try
            {
                ShowMetricDataResponse showMetricDataResponse = cesClient.ShowMetricData(showMetricDataRequest);
                foreach (var datapoint in showMetricDataResponse.Datapoints)
                {
                    Console.WriteLine(datapoint.ToString());
                }
            }
            catch (RequestTimeoutException requestTimeoutException)
            {
                Console.WriteLine(requestTimeoutException.ErrorMessage);
            }
            catch (ServiceResponseException clientRequestException)
            {
                Console.WriteLine(clientRequestException.HttpStatusCode);
                Console.WriteLine(clientRequestException.ErrorCode);
                Console.WriteLine(clientRequestException.ErrorMsg);
            }
            catch (ConnectionException connectionException)
            {
                Console.WriteLine(connectionException.ErrorMessage);
            }
        }