Beispiel #1
0
        private async Task <int?> GetOngoingRequestCountAsync([NotNull] Channel channel,
                                                              [NotNull] string serviceName)
        {
            try
            {
                _logger.LogDebug("Getting load report from {serviceName} at {channel}...",
                                 serviceName, channel);

                var loadRequest = new LoadReportRequest
                {
                    ServiceName = serviceName
                };

                LoadReportingGrpc.LoadReportingGrpcClient loadClient =
                    new LoadReportingGrpc.LoadReportingGrpcClient(channel);

                LoadReportResponse loadReportResponse =
                    await loadClient.ReportLoadAsync(loadRequest);

                return(loadReportResponse.ServerStats.CurrentRequests);
            }
            catch (Exception e)
            {
                _logger.LogDebug(e, "Error getting load report from {serviceName}: {errorMessage}",
                                 serviceName, e.Message);
                return(null);
            }
        }
 private static async Task <LoadReportResponse> GetLoadReport(
     [NotNull] LoadReportingGrpc.LoadReportingGrpcClient loadClient,
     [NotNull] LoadReportRequest loadRequest)
 {
     return(await loadClient.ReportLoadAsync(loadRequest));
 }