The LogsFileFinder is essentially singleton (because ApplicationLogsReader is registered as singleton in the IoC container) so that it can retain the list of included/excluded files from one request to another. This amortizes the cost of reading the first line of each file to determine if its in the right format. Over a long period of time, the list of included/excluded files will get very long unless it is trimmed back down to size.