Skip to content

Commit c507d65

Browse files
committed
Improve cli logger
1 parent 42ea8f9 commit c507d65

File tree

4 files changed

+46
-5
lines changed

4 files changed

+46
-5
lines changed

src/EasySign.Cli/BundleCommandProvider.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ public BundleCommandProvider(ILogger logger)
2222

2323
public override void InitializeBundle(string bundlePath)
2424
{
25+
Program.Logger.Information("Initializing bundle at {bundlePath}", bundlePath);
2526
Bundle = new Bundle(bundlePath, _logger);
2627
}
2728

src/EasySign.Cli/EasySign.Cli.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
<ItemGroup>
3131
<PackageReference Include="Nerdbank.GitVersioning" Version="3.7.115" PrivateAssets="All" />
3232
<PackageReference Include="Serilog" Version="4.2.0" />
33+
<PackageReference Include="Serilog.Enrichers.Thread" Version="4.0.0" />
3334
<PackageReference Include="Serilog.Extensions.Logging" Version="9.0.1" />
3435
<PackageReference Include="Serilog.Sinks.File" Version="6.0.0" />
3536
</ItemGroup>

src/EasySign.Cli/Program.cs

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,29 +16,41 @@ namespace SAPTeam.EasySign.Cli
1616
{
1717
internal class Program
1818
{
19+
public static Serilog.ILogger Logger { get; private set; }
20+
1921
static int Main(string[] args)
2022
{
2123
Log.Logger = new LoggerConfiguration()
22-
.WriteTo.File(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "logs/log-.txt"), rollingInterval: RollingInterval.Day, shared: true)
24+
.Enrich.WithThreadId()
25+
.WriteTo.File(
26+
Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "logs/log-.txt"),
27+
rollingInterval: RollingInterval.Day,
28+
outputTemplate: "{Timestamp:yyyy-MM-dd HH:mm:ss.fff} [{Level:u3}] {Context}({ThreadId}) - {Message} {NewLine}{Exception}"
29+
)
2330
.MinimumLevel.Debug() // Minimum log level
2431
.CreateLogger();
2532

2633
var serviceCollection = new ServiceCollection();
2734
serviceCollection.AddLogging(configure =>
2835
{
2936
configure.ClearProviders(); // Clear default providers
30-
configure.AddSerilog();
37+
configure.AddSerilog(Log.Logger.ForContext("Context", "Bundle"));
3138
});
3239

3340
var serviceProvider = serviceCollection.BuildServiceProvider();
3441

3542
// Resolve an ILogger instance
36-
var logger = serviceProvider.GetRequiredService<ILogger<Program>>();
37-
logger.BeginScope("EasySign.Cli started at " + DateTime.Now);
43+
var bundleLogger = serviceProvider.GetRequiredService<ILogger<Bundle>>();
44+
45+
Logger = Log.Logger.ForContext("Context", "Main");
46+
Logger.Information("Starting EasySign CLI at {DateTime}", DateTime.Now);
3847

39-
var root = new BundleCommandProvider(logger).GetRootCommand();
48+
var root = new BundleCommandProvider(bundleLogger).GetRootCommand();
4049
var exitCode = root.Invoke(args);
4150

51+
Logger.Information("Shutting down EasySign CLI at {DateTime} with exit code {ExitCode}", DateTime.Now, exitCode);
52+
53+
Log.CloseAndFlush();
4254
return exitCode;
4355
}
4456

src/EasySign.Cli/packages.lock.json

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,15 @@
1414
"resolved": "4.2.0",
1515
"contentHash": "gmoWVOvKgbME8TYR+gwMf7osROiWAURterc6Rt2dQyX7wtjZYpqFiA/pY6ztjGQKKV62GGCyOcmtP1UKMHgSmA=="
1616
},
17+
"Serilog.Enrichers.Thread": {
18+
"type": "Direct",
19+
"requested": "[4.0.0, )",
20+
"resolved": "4.0.0",
21+
"contentHash": "C7BK25a1rhUyr+Tp+1BYcVlBJq7M2VCHlIgnwoIUVJcicM9jYcvQK18+OeHiXw7uLPSjqWxJIp1EfaZ/RGmEwA==",
22+
"dependencies": {
23+
"Serilog": "4.0.0"
24+
}
25+
},
1726
"Serilog.Extensions.Logging": {
1827
"type": "Direct",
1928
"requested": "[9.0.1, )",
@@ -160,6 +169,15 @@
160169
"resolved": "4.2.0",
161170
"contentHash": "gmoWVOvKgbME8TYR+gwMf7osROiWAURterc6Rt2dQyX7wtjZYpqFiA/pY6ztjGQKKV62GGCyOcmtP1UKMHgSmA=="
162171
},
172+
"Serilog.Enrichers.Thread": {
173+
"type": "Direct",
174+
"requested": "[4.0.0, )",
175+
"resolved": "4.0.0",
176+
"contentHash": "C7BK25a1rhUyr+Tp+1BYcVlBJq7M2VCHlIgnwoIUVJcicM9jYcvQK18+OeHiXw7uLPSjqWxJIp1EfaZ/RGmEwA==",
177+
"dependencies": {
178+
"Serilog": "4.0.0"
179+
}
180+
},
163181
"Serilog.Extensions.Logging": {
164182
"type": "Direct",
165183
"requested": "[9.0.1, )",
@@ -274,6 +292,15 @@
274292
"resolved": "4.2.0",
275293
"contentHash": "gmoWVOvKgbME8TYR+gwMf7osROiWAURterc6Rt2dQyX7wtjZYpqFiA/pY6ztjGQKKV62GGCyOcmtP1UKMHgSmA=="
276294
},
295+
"Serilog.Enrichers.Thread": {
296+
"type": "Direct",
297+
"requested": "[4.0.0, )",
298+
"resolved": "4.0.0",
299+
"contentHash": "C7BK25a1rhUyr+Tp+1BYcVlBJq7M2VCHlIgnwoIUVJcicM9jYcvQK18+OeHiXw7uLPSjqWxJIp1EfaZ/RGmEwA==",
300+
"dependencies": {
301+
"Serilog": "4.0.0"
302+
}
303+
},
277304
"Serilog.Extensions.Logging": {
278305
"type": "Direct",
279306
"requested": "[9.0.1, )",

0 commit comments

Comments
 (0)