mirror of
https://github.com/Prowlarr/Prowlarr.git
synced 2025-09-29 13:25:13 +02:00
analytics will not leak exceptions while in production.
This commit is contained in:
@@ -1,5 +1,7 @@
|
|||||||
using System.Linq;
|
using System;
|
||||||
|
using System.Linq;
|
||||||
using DeskMetrics;
|
using DeskMetrics;
|
||||||
|
using NLog;
|
||||||
using Ninject;
|
using Ninject;
|
||||||
using NzbDrone.Common;
|
using NzbDrone.Common;
|
||||||
|
|
||||||
@@ -7,6 +9,8 @@ namespace NzbDrone.Core.Providers
|
|||||||
{
|
{
|
||||||
public class AnalyticsProvider
|
public class AnalyticsProvider
|
||||||
{
|
{
|
||||||
|
private static readonly Logger logger = LogManager.GetCurrentClassLogger();
|
||||||
|
|
||||||
private readonly IDeskMetricsClient _deskMetricsClient;
|
private readonly IDeskMetricsClient _deskMetricsClient;
|
||||||
public const string DESKMETRICS_TEST_ID = "4ea8d347a14ad71442000002";
|
public const string DESKMETRICS_TEST_ID = "4ea8d347a14ad71442000002";
|
||||||
public const string DESKMETRICS_PRODUCTION_ID = "4f20b01ea14ad729b2000000";
|
public const string DESKMETRICS_PRODUCTION_ID = "4f20b01ea14ad729b2000000";
|
||||||
@@ -24,17 +28,27 @@ namespace NzbDrone.Core.Providers
|
|||||||
|
|
||||||
public virtual void Checkpoint()
|
public virtual void Checkpoint()
|
||||||
{
|
{
|
||||||
if (EnviromentProvider.IsNewInstall)
|
try
|
||||||
{
|
{
|
||||||
_deskMetricsClient.RegisterInstall();
|
if (EnviromentProvider.IsNewInstall)
|
||||||
}
|
{
|
||||||
|
_deskMetricsClient.RegisterInstall();
|
||||||
|
}
|
||||||
|
|
||||||
if (_deskMetricsClient.Started)
|
if (_deskMetricsClient.Started)
|
||||||
|
{
|
||||||
|
_deskMetricsClient.Stop();
|
||||||
|
}
|
||||||
|
|
||||||
|
_deskMetricsClient.Start();
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
_deskMetricsClient.Stop();
|
if (!EnviromentProvider.IsProduction)
|
||||||
}
|
throw;
|
||||||
|
|
||||||
_deskMetricsClient.Start();
|
logger.WarnException("Error while sending analytics data.", e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user