NUC-37: Add exception handling to the workers.
This commit is contained in:
parent
efe6c945b0
commit
5d16e93bda
3 changed files with 61 additions and 46 deletions
|
@ -81,8 +81,4 @@
|
|||
<ProjectReference Include="..\NucuCar.Domain\NucuCar.Domain.csproj" />
|
||||
<ProjectReference Include="..\NucuCar.Telemetry\NucuCar.Telemetry.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="Telemetry" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
using System;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
|
@ -27,8 +28,11 @@ namespace NucuCar.Sensors
|
|||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var sensorIdentifier = Sensor.GetIdentifier();
|
||||
Logger?.LogInformation($"Starting sensor worker for {sensorIdentifier}");
|
||||
try
|
||||
{
|
||||
TelemetryPublisher?.RegisterTelemeter(Sensor);
|
||||
|
||||
Sensor.Initialize();
|
||||
|
@ -63,5 +67,11 @@ namespace NucuCar.Sensors
|
|||
|
||||
TelemetryPublisher?.UnRegisterTelemeter(Sensor);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Logger?.LogError($"Unhandled exception in SensorWorker {sensorIdentifier}: {e.Message}");
|
||||
Logger?.LogDebug(e.StackTrace);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,3 +1,4 @@
|
|||
using System;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
|
@ -27,6 +28,8 @@ namespace NucuCar.Telemetry
|
|||
}
|
||||
|
||||
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (!_serviceEnabled)
|
||||
{
|
||||
|
@ -48,5 +51,11 @@ namespace NucuCar.Telemetry
|
|||
await Task.Delay(_interval, stoppingToken);
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
_logger?.LogError($"Unhandled exception in TelemetryWorker. {e.Message}");
|
||||
_logger?.LogDebug(e.StackTrace);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue