2021-03-06 21:47:02 +00:00
|
|
|
|
using System;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text.RegularExpressions;
|
|
|
|
|
using NLog;
|
|
|
|
|
using NzbDrone.Common.Extensions;
|
|
|
|
|
using NzbDrone.Core.Configuration;
|
|
|
|
|
using NzbDrone.Core.Download;
|
|
|
|
|
using NzbDrone.Core.ThingiProvider.Events;
|
|
|
|
|
|
|
|
|
|
namespace NzbDrone.Core.HealthCheck.Checks
|
|
|
|
|
{
|
|
|
|
|
public class PackageGlobalMessageCheck : HealthCheckBase
|
|
|
|
|
{
|
|
|
|
|
private readonly IDeploymentInfoProvider _deploymentInfoProvider;
|
|
|
|
|
|
|
|
|
|
public PackageGlobalMessageCheck(IDeploymentInfoProvider deploymentInfoProvider)
|
|
|
|
|
{
|
|
|
|
|
_deploymentInfoProvider = deploymentInfoProvider;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override HealthCheck Check()
|
|
|
|
|
{
|
|
|
|
|
if (_deploymentInfoProvider.PackageGlobalMessage.IsNullOrWhiteSpace())
|
|
|
|
|
{
|
|
|
|
|
return new HealthCheck(GetType());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var message = _deploymentInfoProvider.PackageGlobalMessage;
|
|
|
|
|
HealthCheckResult result = HealthCheckResult.Notice;
|
2021-03-07 16:22:31 +00:00
|
|
|
|
|
2021-03-06 21:47:02 +00:00
|
|
|
|
if (message.StartsWith("Error:"))
|
|
|
|
|
{
|
|
|
|
|
message = message.Substring(6);
|
|
|
|
|
result = HealthCheckResult.Error;
|
|
|
|
|
}
|
|
|
|
|
else if (message.StartsWith("Warn:"))
|
|
|
|
|
{
|
|
|
|
|
message = message.Substring(5);
|
|
|
|
|
result = HealthCheckResult.Warning;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return new HealthCheck(GetType(), result, message, "#package_maintainer_message");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|