예제 #1
0
        public object Get(GetServerLogs request)
        {
            List <FileSystemMetadata> files;

            try
            {
                files = _fileSystem.GetFiles(_appPaths.LogDirectoryPath)
                        .Where(i => string.Equals(i.Extension, ".txt", StringComparison.OrdinalIgnoreCase))
                        .ToList();
            }
            catch (DirectoryNotFoundException)
            {
                files = new List <FileSystemMetadata>();
            }

            var result = files.Select(i => new LogFile
            {
                DateCreated  = _fileSystem.GetCreationTimeUtc(i),
                DateModified = _fileSystem.GetLastWriteTimeUtc(i),
                Name         = i.Name,
                Size         = i.Length
            }).OrderByDescending(i => i.DateModified)
                         .ThenByDescending(i => i.DateCreated)
                         .ThenBy(i => i.Name)
                         .ToList();

            return(ToOptimizedResult(result));
        }
예제 #2
0
        public object Get(GetServerLogs request)
        {
            IEnumerable <FileSystemMetadata> files;

            try
            {
                files = _fileSystem.GetFiles(_appPaths.LogDirectoryPath, new[] { ".txt", ".log" }, true, false);
            }
            catch (IOException ex)
            {
                Logger.LogError(ex, "Error getting logs");
                files = Enumerable.Empty <FileSystemMetadata>();
            }

            var result = files.Select(i => new LogFile
            {
                DateCreated  = _fileSystem.GetCreationTimeUtc(i),
                DateModified = _fileSystem.GetLastWriteTimeUtc(i),
                Name         = i.Name,
                Size         = i.Length
            }).OrderByDescending(i => i.DateModified)
                         .ThenByDescending(i => i.DateCreated)
                         .ThenBy(i => i.Name)
                         .ToArray();

            return(ToOptimizedResult(result));
        }
예제 #3
0
        public object Get(GetServerLogs request)
        {
            List <FileSystemMetadata> files;

            try
            {
                files = _fileSystem.GetFiles(_appPaths.LogDirectoryPath, new[] { ".txt" }, true, false)
                        .ToList();
            }
            catch (IOException)
            {
                files = new List <FileSystemMetadata>();
            }

            var result = files.Select(i => new LogFile
            {
                DateCreated  = _fileSystem.GetCreationTimeUtc(i),
                DateModified = _fileSystem.GetLastWriteTimeUtc(i),
                Name         = i.Name,
                Size         = i.Length
            }).OrderByDescending(i => i.DateModified)
                         .ThenByDescending(i => i.DateCreated)
                         .ThenBy(i => i.Name)
                         .ToList();

            return(ToOptimizedResult(result));
        }