diff options
| author | sparky8251 <sparky@possumlodge.me> | 2020-04-26 11:28:17 -0400 |
|---|---|---|
| committer | sparky8251 <sparky@possumlodge.me> | 2020-04-26 11:28:17 -0400 |
| commit | 68c7a914c3acbd21a9ca879829bf6a670d4cf185 (patch) | |
| tree | f50c61ce67e6f55bbd6e0bf45d610aa36ecdbe71 /Jellyfin.Server/Migrations/Routines/DisableMetricsCollection.cs | |
| parent | 233337256fc997c05bd6f0093a532cea0d54f227 (diff) | |
Added option to disable metrics collection and defaulted it to off
Diffstat (limited to 'Jellyfin.Server/Migrations/Routines/DisableMetricsCollection.cs')
| -rw-r--r-- | Jellyfin.Server/Migrations/Routines/DisableMetricsCollection.cs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/Jellyfin.Server/Migrations/Routines/DisableMetricsCollection.cs b/Jellyfin.Server/Migrations/Routines/DisableMetricsCollection.cs new file mode 100644 index 000000000..b5dc43614 --- /dev/null +++ b/Jellyfin.Server/Migrations/Routines/DisableMetricsCollection.cs @@ -0,0 +1,33 @@ +using System; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Model.Configuration; +using Microsoft.Extensions.Logging; + +namespace Jellyfin.Server.Migrations.Routines +{ + /// <summary> + /// Disable metrics collections for all installations since it can be a security risk if not properly secured. + /// </summary> + internal class DisableMetricsCollection : IMigrationRoutine + { + /// <inheritdoc/> + public Guid Id => Guid.Parse("{4124C2CD-E939-4FFB-9BE9-9B311C413638}"); + + /// <inheritdoc/> + public string Name => "DisableMetricsCollection"; + + /// <inheritdoc/> + public void Perform(CoreAppHost host, ILogger logger) + { + // Set EnableMetrics to false since it can leak sensitive information if not properly secured + var metrics = host.ServerConfigurationManager.Configuration.EnableMetrics; + if (metrics) + { + logger.LogInformation("Disabling metrics collection during migration"); + metrics = false; + + host.ServerConfigurationManager.SaveConfiguration("false", metrics); + } + } + } +} |
