public async Task <(TongJiResult, TongJiInterfaceResult, TongJiInterfaceResult, TongJiInterfaceResult)> GetTongJi(Models.ICliEnvDate cliEnv)
        {
            var ie = await logRepository.GetAllData(cliEnv);

            var          iee = ie.Where(x => x.Level == LogLeveEnum.Error);//代表异常日志
            TongJiResult r   = new TongJiResult
            {
                ClientName      = cliEnv.ClientName,
                EnvironmentName = cliEnv.EnvironmentName,
                HappenTime      = cliEnv.HappenTime,
                Count           = iee.Count(),
                Items           = iee.GroupBy(x => x.Message).Select(x => new TongJiItem()
                {
                    Message = x.Key, Count = x.Count()
                }).OrderByDescending(x => x.Count).ToList()
            };
            //r代表异常日志的结果
            var ieie = ie.Where(x => !x.Success);
            TongJiInterfaceResult tongJiResultError = BornTongJi("异常接口", ieie);
            var ieis = ie.Where(x => x.Success && x.TotalMillionSeconds > 999);
            TongJiInterfaceResult tongJiResultTimeout = BornTongJi("成功但执行时间较长的", ieis);
            TongJiInterfaceResult tongJiResult        = BornTongJi("总的接口", ie);

            return(r, tongJiResultError, tongJiResultTimeout, tongJiResult);
        }
        /// <summary>
        /// 这是统计接口日志的方法
        /// </summary>
        /// <param name="name"></param>
        /// <param name="l"></param>
        /// <returns></returns>
        private TongJiInterfaceResult BornTongJi(string name, IEnumerable <Log> l)
        {
            TongJiInterfaceResult tongJiResult = new TongJiInterfaceResult()
            {
                Title = "以下是" + name + "统计情况,共执行调用" + l.Count() + "次",
                Items = l.GroupBy(x => x.Message).Select(x => new TongJiInterfaceItem()
                {
                    MethodName = x.Key,
                    Count      = x.Count(),
                    AvgSeconds = Convert.ToInt32(x.Average(y => y.TotalMillionSeconds) / 1000)
                }).OrderByDescending(x => x.Count).ToList()
            };

            return(tongJiResult);
        }