Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CallbackHandler.Tests/BootstrapperTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ private void AddTestRegistrations(ServiceRegistry services,
services.AddSingleton<DiagnosticListener>(diagnosticSource);
services.AddSingleton<IWebHostEnvironment>(hostingEnvironment);
services.AddSingleton<IHostEnvironment>(hostingEnvironment);
services.AddSingleton<IConfiguration>(Startup.Configuration);
}
}
}
3 changes: 3 additions & 0 deletions CallbackHandler/Bootstrapper/MiddlewareRegistry.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
using KurrentDB.Client;
using Microsoft.Extensions.Logging;
using Microsoft.OpenApi;
using Shared.Monitoring;
using Swashbuckle.AspNetCore.SwaggerGen;

namespace CallbackHandler.Bootstrapper;
Expand Down Expand Up @@ -45,6 +46,8 @@ public MiddlewareRegistry()
this.AddSingleton(new RequestResponseMiddlewareLoggingConfig(middlewareLogLevel, logRequests, logResponses));

this.ConfigureHttpJsonOptions(jsonOptions => JsonSerializerConfiguration.ConfigureMinimalApi(jsonOptions.SerializerOptions));

this.AddUptimeKuma();
}

private void AddSwaggerAction(SwaggerGenOptions c) {
Expand Down
11 changes: 10 additions & 1 deletion CallbackHandler/Startup.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ namespace CallbackHandler
using Shared.General;
using Shared.Logger;
using Shared.Middleware;
using Shared.Monitoring;
using Shared.Serialisation;
using System.Diagnostics.CodeAnalysis;
using ILogger = Microsoft.Extensions.Logging.ILogger;
Expand Down Expand Up @@ -67,7 +68,8 @@ public void ConfigureContainer(ServiceRegistry services)


// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILoggerFactory loggerFactory)
public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILoggerFactory loggerFactory,
IHostApplicationLifetime lifetime, IHost host)
{
if (env.IsDevelopment())
{
Expand Down Expand Up @@ -106,6 +108,13 @@ public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILoggerF
app.UseSwagger();

app.UseSwaggerUI();

lifetime.ApplicationStarted.Register(() =>
{
host.RegisterWithUptimeKumaAsync()
.GetAwaiter()
.GetResult();
});
}
}
}
9 changes: 8 additions & 1 deletion CallbackHandler/appsettings.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
{


"UptimeKuma": {
"Monitor": {
"Name": "Callback Handler",
"Url": "http://localhost:5010/health",
Comment thread
StuartFerguson marked this conversation as resolved.
Resolved
"IntervalInSeconds": 60
}
}
}
32 changes: 16 additions & 16 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@
<ItemGroup>
<PackageVersion Include="Lamar" Version="16.0.0" />
<PackageVersion Include="Lamar.Microsoft.DependencyInjection" Version="16.0.0" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="10.0.11" />
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="10.0.11" />
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.9.0" />
<PackageVersion Include="Imposter" Version="0.1.9" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="10.0.12" />
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="10.0.12" />
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.10.0" />
<PackageVersion Include="Imposter" Version="0.1.11" />
<PackageVersion Include="xunit.v3.mtp-v2" Version="4.0.0" />
<PackageVersion Include="xunit.runner.visualstudio" Version="4.0.0" />
<PackageVersion Include="coverlet.collector" Version="10.0.1" />
Expand All @@ -19,29 +19,29 @@
<PackageVersion Include="Reqnroll.NUnit" Version="3.3.4" />
<PackageVersion Include="NUnit" Version="4.6.1" />
<PackageVersion Include="NUnit3TestAdapter" Version="6.3.0" />
<PackageVersion Include="SecurityService.Client" Version="2026.8.1" />
<PackageVersion Include="SecurityService.IntegrationTesting.Helpers" Version="2026.8.1" />
<PackageVersion Include="Shared" Version="2026.8.3" />
<PackageVersion Include="Shared.IntegrationTesting" Version="2026.8.3" />
<PackageVersion Include="TransactionProcessor.Client" Version="2026.8.1" />
<PackageVersion Include="TransactionProcessor.IntegrationTesting.Helpers" Version="2026.8.1" />
<PackageVersion Include="SecurityService.Client" Version="2026.9.2.177" />
<PackageVersion Include="SecurityService.IntegrationTesting.Helpers" Version="2026.9.2.177" />
<PackageVersion Include="Shared" Version="2026.9.3" />
<PackageVersion Include="Shared.IntegrationTesting" Version="2026.9.3" />
<PackageVersion Include="TransactionProcessor.Client" Version="2026.9.2.395" />
<PackageVersion Include="TransactionProcessor.IntegrationTesting.Helpers" Version="2026.9.2.395" />
<PackageVersion Include="Grpc.Net.Client" Version="2.83.0" />
<PackageVersion Include="Shared.DomainDrivenDesign" Version="2026.8.3" />
<PackageVersion Include="Shared.EventStore" Version="2026.8.3" />
<PackageVersion Include="Shared.DomainDrivenDesign" Version="2026.9.3" />
<PackageVersion Include="Shared.EventStore" Version="2026.9.3" />
<PackageVersion Include="AspNetCore.HealthChecks.UI.Client" Version="9.0.0" />
<PackageVersion Include="MediatR" Version="14.2.0" />
<PackageVersion Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.23.0" />
<PackageVersion Include="Sentry.AspNetCore" Version="6.9.0" />
<PackageVersion Include="Shared.Results.Web" Version="2026.8.3" />
<PackageVersion Include="Sentry.AspNetCore" Version="6.11.0" />
<PackageVersion Include="Shared.Results.Web" Version="2026.9.3" />
<PackageVersion Include="SimpleResults.AspNetCore" Version="4.0.0" />
<PackageVersion Include="Swashbuckle.AspNetCore" Version="10.2.3" />
<PackageVersion Include="Swashbuckle.AspNetCore.Annotations" Version="10.2.3" />
<PackageVersion Include="Swashbuckle.AspNetCore.Filters" Version="10.0.1" />
<PackageVersion Include="Swashbuckle.AspNetCore.Swagger" Version="10.2.3" />
<PackageVersion Include="Swashbuckle.AspNetCore.SwaggerGen" Version="10.2.3" />
<PackageVersion Include="Swashbuckle.AspNetCore.SwaggerUI" Version="10.2.3" />
<PackageVersion Include="Microsoft.Extensions.Hosting.WindowsServices" Version="10.0.11" />
<PackageVersion Include="Microsoft.Extensions.Hosting.WindowsServices" Version="10.0.12" />
<PackageVersion Include="Shouldly" Version="4.3.0" />
<PackageVersion Include="xunit.v3.extensibility.core" Version="4.0.0" />
</ItemGroup>
</Project>
</Project>
Loading