Ejemplo n.º 1
0
        public async Task <string> GetServiceBasicData(QueryRequest request)
        {
            var start = request.Start.ToDateTime();
            var end   = request.End.ToDateTime();

            BasicFilter filter = new BasicFilter {
                Service   = request.Service,
                Instance  = request.Instance,
                StartTime = start,
                EndTime   = end,
                Count     = 6
            };

            var endpoint = _storage.GetGroupData(filter, GroupType.Route);

            var instance = _storage.GetGroupData(filter, GroupType.Instance);

            var range = GetTimeRange(start, end);

            var app = _storage.GetAppStatus(filter, range);

            await Task.WhenAll(endpoint, instance, app);

            var result = new
            {
                endpoint = endpoint.Result,
                instance = instance.Result,
                range    = range,
                app      = app.Result
            };

            return(Json(true, result));
        }
Ejemplo n.º 2
0
        public async Task <string> GetServiceBasicData(QueryRequest request)
        {
            var start = request.Start.ToDateTime();
            var end   = request.End.ToDateTime();

            #region BuildService
            if (request.Service.IsEmpty() || request.Service == "ALL")
            {
                request.Service = "";
            }

            if (request.Instance.IsEmpty() || request.Instance == "ALL")
            {
                request.LocalIP   = "";
                request.LocalPort = 0;
            }
            else
            {
                request.LocalIP   = request.Instance.Substring(0, request.Instance.LastIndexOf(':'));
                request.LocalPort = request.Instance.Substring(request.Instance.LastIndexOf(':') + 1).ToInt();
            }

            #endregion

            IndexPageDataFilterOption option = new IndexPageDataFilterOption
            {
                Service         = request.Service,
                LocalIP         = request.LocalIP,
                LocalPort       = request.LocalPort,
                StartTime       = start,
                EndTime         = end,
                StartTimeFormat = "yyyy-MM-dd HH:mm:ss",
                EndTimeFormat   = "yyyy-MM-dd HH:mm:ss",
                Take            = 6
            };

            BasicFilter filter = new BasicFilter {
                Service   = request.Service,
                Instance  = request.Instance,
                StartTime = start,
                EndTime   = end,
                Count     = 6
            };

            var route = await _storage.GetGroupData(filter, GroupType.Route);

            var instance = await _storage.GetGroupData(filter, GroupType.Instance);

            var range = GetTimeRange(option.StartTime.Value, option.EndTime.Value);

            var app = await _storage.GetAppStatus(filter, range);


            return(Json(new HttpResultEntity(1, "ok", new
            {
                route = route,
                instance = instance,
                range = range,
                app = app
            })));
        }