Skip to content

Commit b7b1958

Browse files
committed
Refactor
1 parent 3ffdc4c commit b7b1958

File tree

1 file changed

+31
-26
lines changed

1 file changed

+31
-26
lines changed

src/ServiceControl.Audit/HostApplicationBuilderExtensions.cs

Lines changed: 31 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -22,22 +22,22 @@ namespace ServiceControl.Audit;
2222
using NServiceBus.Transport;
2323
using Persistence;
2424
using Transports;
25-
using ServiceControl.Infrastructure;
2625
using OpenTelemetry.Metrics;
2726
using OpenTelemetry.Resources;
2827

2928
static class HostApplicationBuilderExtensions
3029
{
30+
static string InstanceVersion = FileVersionInfo.GetVersionInfo(typeof(HostApplicationBuilderExtensions).Assembly.Location).ProductVersion;
31+
3132
public static void AddServiceControlAudit(this IHostApplicationBuilder builder,
3233
Func<ICriticalErrorContext, CancellationToken, Task> onCriticalError,
3334
Settings settings,
3435
EndpointConfiguration configuration)
3536
{
36-
var version = FileVersionInfo.GetVersionInfo(typeof(HostApplicationBuilderExtensions).Assembly.Location).ProductVersion;
3737
var persistenceConfiguration = PersistenceConfigurationFactory.LoadPersistenceConfiguration(settings);
3838
var persistenceSettings = persistenceConfiguration.BuildPersistenceSettings(settings);
3939

40-
RecordStartup(version, settings, configuration, persistenceConfiguration);
40+
RecordStartup(settings, configuration, persistenceConfiguration);
4141

4242
builder.Logging.ClearProviders();
4343
builder.Logging.AddNLog();
@@ -72,7 +72,31 @@ public static void AddServiceControlAudit(this IHostApplicationBuilder builder,
7272
NServiceBusFactory.Configure(settings, transportCustomization, transportSettings, onCriticalError, configuration);
7373
builder.UseNServiceBus(configuration);
7474

75-
services.AddSingleton<IngestionMetrics>();
75+
builder.AddMetrics(settings);
76+
77+
// Configure after the NServiceBus hosted service to ensure NServiceBus is already started
78+
if (settings.IngestAuditMessages)
79+
{
80+
services.AddHostedService<AuditIngestion>();
81+
}
82+
83+
if (WindowsServiceHelpers.IsWindowsService())
84+
{
85+
// The if is added for clarity, internally AddWindowsService has a similar logic
86+
builder.AddWindowsServiceWithRequestTimeout();
87+
}
88+
}
89+
90+
public static void AddServiceControlAuditInstallers(this IHostApplicationBuilder builder, Settings settings)
91+
{
92+
var persistenceConfiguration = PersistenceConfigurationFactory.LoadPersistenceConfiguration(settings);
93+
var persistenceSettings = persistenceConfiguration.BuildPersistenceSettings(settings);
94+
builder.Services.AddInstaller(persistenceSettings, persistenceConfiguration);
95+
}
96+
97+
public static void AddMetrics(this IHostApplicationBuilder builder, Settings settings)
98+
{
99+
builder.Services.AddSingleton<IngestionMetrics>();
76100

77101
if (!string.IsNullOrEmpty(settings.OtlpEndpointUrl))
78102
{
@@ -84,7 +108,7 @@ public static void AddServiceControlAudit(this IHostApplicationBuilder builder,
84108
builder.Services.AddOpenTelemetry()
85109
.ConfigureResource(b => b.AddService(
86110
serviceName: settings.InstanceName,
87-
serviceVersion: version,
111+
serviceVersion: InstanceVersion,
88112
autoGenerateServiceInstanceId: true))
89113
.WithMetrics(b =>
90114
{
@@ -98,32 +122,13 @@ public static void AddServiceControlAudit(this IHostApplicationBuilder builder,
98122
var logger = LogManager.GetLogger(typeof(HostApplicationBuilderExtensions));
99123
logger.InfoFormat("OpenTelemetry metrics exporter enabled: {0}", settings.OtlpEndpointUrl);
100124
}
101-
102-
// Configure after the NServiceBus hosted service to ensure NServiceBus is already started
103-
if (settings.IngestAuditMessages)
104-
{
105-
services.AddHostedService<AuditIngestion>();
106-
}
107-
108-
if (WindowsServiceHelpers.IsWindowsService())
109-
{
110-
// The if is added for clarity, internally AddWindowsService has a similar logic
111-
builder.AddWindowsServiceWithRequestTimeout();
112-
}
113-
}
114-
115-
public static void AddServiceControlAuditInstallers(this IHostApplicationBuilder builder, Settings settings)
116-
{
117-
var persistenceConfiguration = PersistenceConfigurationFactory.LoadPersistenceConfiguration(settings);
118-
var persistenceSettings = persistenceConfiguration.BuildPersistenceSettings(settings);
119-
builder.Services.AddInstaller(persistenceSettings, persistenceConfiguration);
120125
}
121126

122-
static void RecordStartup(string version, Settings settings, EndpointConfiguration endpointConfiguration, IPersistenceConfiguration persistenceConfiguration)
127+
static void RecordStartup(Settings settings, EndpointConfiguration endpointConfiguration, IPersistenceConfiguration persistenceConfiguration)
123128
{
124129
var startupMessage = $@"
125130
-------------------------------------------------------------
126-
ServiceControl Audit Version: {version}
131+
ServiceControl Audit Version: {InstanceVersion}
127132
Audit Retention Period: {settings.AuditRetentionPeriod}
128133
Forwarding Audit Messages: {settings.ForwardAuditMessages}
129134
ServiceControl Logging Level: {settings.LoggingSettings.LogLevel}

0 commit comments

Comments
 (0)