public List <RequestInfo> GetRequestList(GetRequestListRequest request, out int totalCount)
        {
            string where = " where 1=1 ";

            if (!request.Node.IsEmpty())
            {
                string nodes = string.Join(",", request.Node.Split(",").ToList().Select(x => "'" + x + "'"));

                where = where + $" AND Node IN ({nodes})";
            }

            if (!request.Start.IsEmpty())
            {
                where = where + $" AND CreateTime >= '{request.Start}' ";
            }

            if (!request.End.IsEmpty())
            {
                where = where + $" AND CreateTime < '{request.End}' ";
            }

            if (!request.IP.IsEmpty())
            {
                where = where + $" AND IP = '{request.IP}' ";
            }

            if (!request.Url.IsEmpty())
            {
                where = where + $" AND  Url like '%{request.Url}%' ";
            }

            string sql = "Select * From RequestInfo " + where;

            return(conn.GetListBySql <RequestInfo>(sql, "id desc", request.pageSize, request.pageNumber, out totalCount, request));
        }
예제 #2
0
        public async Task <IActionResult> GetRequestList(GetRequestListRequest request)
        {
            if (request.Start.IsEmpty() && request.End.IsEmpty())
            {
                request.Start = DateTime.Now.ToString("yyyy-MM-dd");

                request.End = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd");
            }

            var result = await _storage.SearchRequestInfoAsync(new RequestInfoSearchFilterOption()
            {
                Nodes          = request.Node.IsEmpty() ? null : request.Node.Split(','),
                IP             = request.IP,
                Url            = request.Url,
                StartTime      = request.Start.ToDateTime(),
                EndTime        = request.End.TryToDateTime(),
                Page           = request.pageNumber,
                PageSize       = request.pageSize,
                IsOrderByField = true,
                Field          = RequestInfoFields.CreateTime,
                IsAscend       = true,
            }).ConfigureAwait(false);

            return(Json(new { total = result.AllItemCount, rows = result.List }));
        }
예제 #3
0
        public IActionResult GetRequestList(GetRequestListRequest request)
        {
            int totalCount = 0;

            var list = _dataService.GetRequestList(request, out totalCount);

            return(Json(new { total = totalCount, rows = list }));
        }
예제 #4
0
        public IActionResult GetRequestList(GetRequestListRequest request)
        {
            int totalCount = 0;

            if (request.Start.IsEmpty() && request.End.IsEmpty())
            {
                request.Start = DateTime.Now.ToString("yyyy-MM-dd");

                request.End = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd");
            }

            var list = _dataService.GetRequestList(request, out totalCount);

            return(Json(new { total = totalCount, rows = list }));
        }
예제 #5
0
        public async Task <string> GetRequestList(GetRequestListRequest request)
        {
            #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



            var result = await _storage.SearchRequestInfoAsync(new RequestInfoSearchFilterOption()
            {
                TraceId         = request.TraceId,
                StatusCodes     = request.StatusCode.IsEmpty() ? null : request.StatusCode.Split(',').Select(x => x.ToInt()).ToArray(),
                Service         = request.Service,
                LocalIP         = request.LocalIP,
                LocalPort       = request.LocalPort,
                IP              = request.IP,
                Url             = request.Url,
                StartTime       = request.Start.ToDateTime(),
                EndTime         = request.End.TryToDateTime(),
                Page            = request.pageNumber,
                PageSize        = request.pageSize,
                IsOrderByField  = true,
                Field           = RequestInfoFields.CreateTime,
                IsAscend        = false,
                StartTimeFormat = "yyyy-MM-dd HH:mm:ss",
                EndTimeFormat   = "yyyy-MM-dd HH:mm:ss"
            });

            return(Json(new { total = result.AllItemCount, rows = result.List }));
        }
        public async Task <IActionResult> GetRequestList([FromBody] GetRequestListRequest request)
        {
            var result = await _storage.SearchRequestInfoAsync(new RequestInfoSearchFilterOption()
            {
                TraceId         = request.TraceId,
                StatusCodes     = request.StatusCode.IsEmpty() ? null : request.StatusCode.Split(',').Select(x => x.ToInt()).ToArray(),
                Nodes           = request.Node.IsEmpty() ? null : request.Node.Split(','),
                IP              = request.IP,
                Url             = request.Url,
                StartTime       = request.Start.ToDateTime(),
                EndTime         = request.End.TryToDateTime(),
                Page            = request.pageNumber,
                PageSize        = request.pageSize,
                IsOrderByField  = true,
                Field           = RequestInfoFields.CreateTime,
                IsAscend        = false,
                StartTimeFormat = "yyyy-MM-dd HH:mm:ss",
                EndTimeFormat   = "yyyy-MM-dd HH:mm:ss"
            });

            return(Json(new { total = result.AllItemCount, rows = result.List }));
        }
예제 #7
0
        public List <RequestInfo> GetRequestList(GetRequestListRequest request, out int totalCount)
        {
            string where = " where 1=1 ";

            if (!request.Node.IsEmpty())
            {
                string nodes = string.Join(",", request.Node.Split(",").ToList().Select(x => "'" + x + "'"));

                where = where + $" AND Node IN ({nodes})";
            }

            if (!request.Start.IsEmpty())
            {
                where = where + $" AND CreateTime >= '{request.Start}' ";
            }

            if (!request.End.IsEmpty())
            {
                where = where + $" AND CreateTime < '{request.End}' ";
            }

            if (!request.IP.IsEmpty())
            {
                where = where + $" AND IP = '{request.IP}' ";
            }

            if (!request.Url.IsEmpty())
            {
                where = where + $" AND  Url like '%{request.Url}%' ";
            }

            string sql = $"Select * From RequestInfo {where} limit {(request.pageNumber - 1) * request.pageSize},{request.pageSize} ";

            totalCount = conn.QueryFirstOrDefault <int>(" Select count(1) From RequestInfo " + where);

            return(conn.Query <RequestInfo>(sql).ToList());
        }
예제 #8
0
 public List <RequestInfo> GetRequestList(GetRequestListRequest request, out int totalCount) => _accessor.GetRequestList(request, out totalCount);