summaryrefslogtreecommitdiff
path: root/src/Agent.App/Logging/RollingFileLog.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Agent.App/Logging/RollingFileLog.cs')
-rw-r--r--src/Agent.App/Logging/RollingFileLog.cs6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/Agent.App/Logging/RollingFileLog.cs b/src/Agent.App/Logging/RollingFileLog.cs
index 8bdbbb4..f471a9e 100644
--- a/src/Agent.App/Logging/RollingFileLog.cs
+++ b/src/Agent.App/Logging/RollingFileLog.cs
@@ -5,12 +5,14 @@ namespace Agent.App.Logging;
public sealed class RollingFileLog : IDisposable
{
private readonly RollingFileWriter _writer;
+ private readonly TextWriter _consoleWriter;
private readonly int _minimumLevel;
- public RollingFileLog(string directory, long maxBytes, int retainedFiles, string minimumLevel = "information")
+ public RollingFileLog(string directory, long maxBytes, int retainedFiles, string minimumLevel = "information", TextWriter? consoleWriter = null)
{
Directory.CreateDirectory(directory);
_writer = new RollingFileWriter(Path.Combine(directory, "application.log"), maxBytes, retainedFiles);
+ _consoleWriter = consoleWriter ?? Console.Error;
_minimumLevel = ParseLevel(minimumLevel);
}
@@ -24,7 +26,7 @@ public sealed class RollingFileLog : IDisposable
{
if (!force && Level(level) < _minimumLevel) return;
string line = string.Create(CultureInfo.InvariantCulture, $"{DateTimeOffset.UtcNow:O} [{level}] {message}");
- Console.Error.WriteLine(line);
+ _consoleWriter.WriteLine(line);
_writer.WriteLine(line);
}