public MemoryLogVo GetMemoryLog(GetMemoryLogArgs args) { if (args == null) { throw new ArgumentNullException(nameof(args)); } if (string.IsNullOrWhiteSpace(args.Name)) { return(null); } if (MemoryLogFactory.Instance.Loggers.TryGetValue(args.Name, out var logger)) { var item = new MemoryLogVo(); item.Name = logger.Name; var theLogs = logger.Logs.ToList(); item.Count = theLogs.Count; foreach (var theLog in theLogs) { item.Logs.Add(theLog.Message); } return(item); } return(null); }
public List <MemoryLogVo> GetMemoryLogs(GetMemoryLogsArgs args) { var items = new List <MemoryLogVo>(); if (args == null) { throw new ArgumentNullException(nameof(args)); } var loggers = MemoryLogFactory.Instance.Loggers.Values.AsEnumerable(); if (!string.IsNullOrWhiteSpace(args.Like)) { loggers = loggers.Where(x => x.Name.Contains(args.Like, StringComparison.OrdinalIgnoreCase)); } var withLogs = args.WithLogs.HasValue && args.WithLogs.Value; foreach (var logger in loggers) { var item = new MemoryLogVo(); item.Name = logger.Name; var theLogs = logger.Logs.ToList(); item.Count = theLogs.Count; if (withLogs) { foreach (var theLog in theLogs) { item.Logs.Add(theLog.Message); } } items.Add(item); } return(items); }