/// <summary> /// 获取监控数据 /// </summary> /// <param name="requestParams">请求参数.</param> /// <returns>返回对象<see cref="UCloudSDK.Models.GetMetricResponse"/></returns> public GetMetricResponse GetMetric(GetMetricRequest requestParams) { var request = new RestRequest(Method.GET); request.AddUObject(requestParams); return(Execute <GetMetricResponse>(request)); }
public async Task <Metric> GetMetricAsync(GetMetricRequest request, DateTime?deadline) { if (request is null) { throw new ArgumentNullException(nameof(request)); } PlcFrame response = await this.InvokeAsync( PlcFrame.Create(PlcMessageType.GetMetricRequest, ByteString.Empty), deadline) .ConfigureAwait(false); if (response.FrameHeader.MessageType != PlcMessageType.GetMetricResponse) { throw new InvalidDataException( "Response message type mismatch: " + response.FrameHeader.MessageType); } using var reader = new BinaryReader(new MemoryStream(response.FrameBody.ToByteArray())); return(new Metric { CreateTime = Timestamp.FromDateTimeOffset(DateTimeOffset.UtcNow), OutputWaterCelsiusDegree = reader.ReadSingle(), InputWaterCelsiusDegree = reader.ReadSingle(), HeaterOutputWaterCelsiusDegree = reader.ReadSingle(), EnvironmentCelsiusDegree = reader.ReadSingle(), OutputWaterPressureMeter = reader.ReadSingle(), InputWaterPressureMeter = reader.ReadSingle(), HeaterPowerKilowatt = reader.ReadSingle(), WaterPumpFlowRateCubicMeterPerHour = reader.ReadSingle(), }); }
public override Task <GrpcMetric> GetMetric(GetMetricRequest request, ServerCallContext context) { return(this.Invoke( (client, request, deadline) => client.GetMetricAsync(request, deadline), request.DeviceId, request, context)); }
public void GetMetricTest() { NList metricName = new NList(); metricName.Add(UHostMetric.NetworkIn.ToString()); //主机ID,替换为自己的 string resourceId = "uhost-oeuax1"; string resourceType = MetricResourceType.uhost.ToString(); var entity = new GetMetricRequest(Config.region, metricName, resourceId, resourceType); var response = umon.GetMetric(entity); Assert.AreEqual(response.RetCode, 0); }
private static GetMetricResponse GetMonitorInfo(MetricAggregate metric) { try { if (_httpClient.IsRecentError() || !_httpClient.MatchedClientDeviceApp()) { return(null); } GetMetricRequest request = new GetMetricRequest(); if (_httpClient.AppIdentity != null) { request.DeviceAppID = _httpClient.AppIdentity.DeviceAppID; request.DeviceID = _httpClient.AppIdentity.DeviceID; request.AppNameID = _httpClient.AppIdentity.AppNameID; } request.MetricName = metric.Name; request.MetricTypeID = (short)metric.MetricType; request.Category = metric.Category; string jsonData = JsonConvert.SerializeObject(request); var response = _httpClient.SendJsonAndGetResponse( (_httpClient.BaseAPIUrl) + "Metrics/GetMetricInfo", jsonData); if (response.Exception == null && response.StatusCode == HttpStatusCode.OK) { var metricResponse = JsonConvert.DeserializeObject <GetMetricResponse>(response.ResponseText); return(metricResponse); } return(null); } catch (Exception e) { StackifyAPILogger.Log("Error getting monitor info " + e.Message); return(null); } }
public override AsyncUnaryCall <Metric> GetMetricAsync(GetMetricRequest request, Metadata headers = null, DateTime?deadline = null, CancellationToken cancellationToken = default) { return(TestCalls.AsyncUnaryCall( Task.FromResult(new Metric { InputWaterCelsiusDegree = RandomUtils.NextFloat(10, 20), OutputWaterCelsiusDegree = RandomUtils.NextFloat(10, 20), HeaterOutputWaterCelsiusDegree = RandomUtils.NextFloat(10, 20), EnvironmentCelsiusDegree = RandomUtils.NextFloat(10, 20), HeaterPowerKilowatt = RandomUtils.NextFloat(0, 12), WaterPumpFlowRateCubicMeterPerHour = RandomUtils.NextFloat(1, 3), }), Task.FromResult(new Metadata()), () => Status.DefaultSuccess, () => new Metadata(), () => { })); }
public GetMetricResponse GetMetric(GetMetricRequest request) { return(ExecuteAction <GetMetricResponse>(request)); }
public GetMetricResponse GetMetric(GetMetricRequest request) { return(Execute(() => InternalService.GetMetric(request))); }