feat: add Windows Service integration via --service flag
Adds Microsoft.Extensions.Hosting.WindowsServices package and a --service CLI flag to Program.cs that logs service mode activation, enabling future Windows Service lifecycle management.
This commit is contained in:
@@ -3,6 +3,7 @@ using Serilog;
|
||||
using Serilog.Sinks.SystemConsole.Themes;
|
||||
|
||||
var options = new NatsOptions();
|
||||
var windowsService = false;
|
||||
|
||||
// Parse ALL CLI flags into NatsOptions first
|
||||
for (int i = 0; i < args.Length; i++)
|
||||
@@ -81,6 +82,9 @@ for (int i = 0; i < args.Length; i++)
|
||||
case "--remote_syslog" when i + 1 < args.Length:
|
||||
options.RemoteSyslog = args[++i];
|
||||
break;
|
||||
case "--service":
|
||||
windowsService = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -133,6 +137,11 @@ else if (options.Syslog)
|
||||
|
||||
Log.Logger = logConfig.CreateLogger();
|
||||
|
||||
if (windowsService)
|
||||
{
|
||||
Log.Information("Windows Service mode requested");
|
||||
}
|
||||
|
||||
using var loggerFactory = new Serilog.Extensions.Logging.SerilogLoggerFactory(Log.Logger);
|
||||
using var server = new NatsServer(options, loggerFactory);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user