mirror of
https://github.com/aljazceru/btcpayserver.git
synced 2025-12-18 14:34:23 +01:00
Make sure BTCPayServer exit cleanly in case of crash during startup, see https://github.com/aspnet/Hosting/issues/1194
This commit is contained in:
@@ -37,7 +37,7 @@ services:
|
|||||||
- postgres
|
- postgres
|
||||||
|
|
||||||
nbxplorer:
|
nbxplorer:
|
||||||
image: nicolasdorier/nbxplorer:1.0.0.70
|
image: nicolasdorier/nbxplorer:1.0.0.71
|
||||||
ports:
|
ports:
|
||||||
- "32838:32838"
|
- "32838:32838"
|
||||||
expose:
|
expose:
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<OutputType>Exe</OutputType>
|
<OutputType>Exe</OutputType>
|
||||||
<TargetFramework>netcoreapp2.0</TargetFramework>
|
<TargetFramework>netcoreapp2.0</TargetFramework>
|
||||||
<Version>1.0.0.82</Version>
|
<Version>1.0.0.83</Version>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Remove="Build\dockerfiles\**" />
|
<Compile Remove="Build\dockerfiles\**" />
|
||||||
|
|||||||
@@ -12,7 +12,11 @@ namespace BTCPayServer.Logging
|
|||||||
{
|
{
|
||||||
public class CustomConsoleLogProvider : ILoggerProvider
|
public class CustomConsoleLogProvider : ILoggerProvider
|
||||||
{
|
{
|
||||||
ConsoleLoggerProcessor _Processor = new ConsoleLoggerProcessor();
|
ConsoleLoggerProcessor _Processor;
|
||||||
|
public CustomConsoleLogProvider(ConsoleLoggerProcessor processor)
|
||||||
|
{
|
||||||
|
_Processor = processor;
|
||||||
|
}
|
||||||
public ILogger CreateLogger(string categoryName)
|
public ILogger CreateLogger(string categoryName)
|
||||||
{
|
{
|
||||||
return new CustomConsoleLogger(categoryName, (a, b) => true, false, _Processor);
|
return new CustomConsoleLogger(categoryName, (a, b) => true, false, _Processor);
|
||||||
|
|||||||
@@ -24,7 +24,8 @@ namespace BTCPayServer
|
|||||||
{
|
{
|
||||||
ServicePointManager.DefaultConnectionLimit = 100;
|
ServicePointManager.DefaultConnectionLimit = 100;
|
||||||
IWebHost host = null;
|
IWebHost host = null;
|
||||||
CustomConsoleLogProvider loggerProvider = new CustomConsoleLogProvider();
|
var processor = new ConsoleLoggerProcessor();
|
||||||
|
CustomConsoleLogProvider loggerProvider = new CustomConsoleLogProvider(processor);
|
||||||
|
|
||||||
var loggerFactory = new LoggerFactory();
|
var loggerFactory = new LoggerFactory();
|
||||||
loggerFactory.AddProvider(loggerProvider);
|
loggerFactory.AddProvider(loggerProvider);
|
||||||
@@ -44,7 +45,7 @@ namespace BTCPayServer
|
|||||||
.ConfigureLogging(l =>
|
.ConfigureLogging(l =>
|
||||||
{
|
{
|
||||||
l.AddFilter("Microsoft", LogLevel.Error);
|
l.AddFilter("Microsoft", LogLevel.Error);
|
||||||
l.AddProvider(new CustomConsoleLogProvider());
|
l.AddProvider(new CustomConsoleLogProvider(processor));
|
||||||
})
|
})
|
||||||
.UseStartup<Startup>()
|
.UseStartup<Startup>()
|
||||||
.Build();
|
.Build();
|
||||||
@@ -61,13 +62,9 @@ namespace BTCPayServer
|
|||||||
if (!string.IsNullOrEmpty(ex.Message))
|
if (!string.IsNullOrEmpty(ex.Message))
|
||||||
Logs.Configuration.LogError(ex.Message);
|
Logs.Configuration.LogError(ex.Message);
|
||||||
}
|
}
|
||||||
catch (Exception exception)
|
|
||||||
{
|
|
||||||
logger.LogError("Exception thrown while running the server");
|
|
||||||
logger.LogError(exception.ToString());
|
|
||||||
}
|
|
||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
|
processor.Dispose();
|
||||||
if (host != null)
|
if (host != null)
|
||||||
host.Dispose();
|
host.Dispose();
|
||||||
loggerProvider.Dispose();
|
loggerProvider.Dispose();
|
||||||
|
|||||||
Reference in New Issue
Block a user