File tree Expand file tree Collapse file tree 2 files changed +35
-1
lines changed
Expand file tree Collapse file tree 2 files changed +35
-1
lines changed Original file line number Diff line number Diff line change 1+ using ServiceStack . Jobs ;
2+ using ServiceStack . Web ;
3+
4+ [ assembly: HostingStartup ( typeof ( MyApp . ConfigureRequestLogs ) ) ]
5+
6+ namespace MyApp ;
7+
8+ public class ConfigureRequestLogs : IHostingStartup
9+ {
10+ public void Configure ( IWebHostBuilder builder ) => builder
11+ . ConfigureServices ( ( context , services ) => {
12+
13+ services . AddPlugin ( new RequestLogsFeature {
14+ RequestLogger = new SqliteRequestLogger ( ) ,
15+ // EnableResponseTracking = true,
16+ EnableRequestBodyTracking = true ,
17+ EnableErrorTracking = true
18+ } ) ;
19+ services . AddHostedService < RequestLogsHostedService > ( ) ;
20+ } ) ;
21+ }
22+
23+ public class RequestLogsHostedService ( ILogger < RequestLogsHostedService > log , IRequestLogger requestLogger ) : BackgroundService
24+ {
25+ protected override async Task ExecuteAsync ( CancellationToken stoppingToken )
26+ {
27+ var dbRequestLogger = ( SqliteRequestLogger ) requestLogger ;
28+ using var timer = new PeriodicTimer ( TimeSpan . FromSeconds ( 3 ) ) ;
29+ while ( ! stoppingToken . IsCancellationRequested && await timer . WaitForNextTickAsync ( stoppingToken ) )
30+ {
31+ dbRequestLogger . Tick ( log ) ;
32+ }
33+ }
34+ }
Original file line number Diff line number Diff line change 3030
3131 <ItemGroup >
3232 <PackageReference Include =" Microsoft.AspNetCore.OpenApi" Version =" 8.*" />
33- <PackageReference Include =" Swashbuckle.AspNetCore" Version =" 7 .*" />
33+ <PackageReference Include =" Swashbuckle.AspNetCore" Version =" 8 .*" />
3434 <PackageReference Include =" ServiceStack.AspNetCore.OpenApi" Version =" 8.*" />
3535 </ItemGroup >
3636
You can’t perform that action at this time.
0 commit comments