/// <summary> /// Deduces the rollbar configuration. /// </summary> /// <param name="configuration">The configuration.</param> /// <returns></returns> public static IRollbarConfig DeduceRollbarConfig(IConfiguration configuration) { if (RollbarLocator.RollbarInstance.Config.AccessToken != null) { return(RollbarLocator.RollbarInstance.Config); } // Here we assume that the Rollbar singleton was not explicitly preconfigured // anywhere in the code (Program.cs or Startup.cs), // so we are trying to configure it from IConfiguration: Assumption.AssertNotNull(configuration, nameof(configuration)); const string defaultAccessToken = "none"; RollbarConfig rollbarConfig = new RollbarConfig(defaultAccessToken); AppSettingsUtility.LoadAppSettings(rollbarConfig, configuration); if (rollbarConfig.AccessToken == defaultAccessToken) { const string error = "Rollbar.NET notifier is not configured properly. A valid access token needs to be specified."; throw new Exception(error); } RollbarLocator.RollbarInstance .Configure(rollbarConfig); return(rollbarConfig); }
/// <summary> /// Loads the application settings. /// </summary> /// <param name="appSettingsFileName">Name of the application settings file.</param> /// <returns>Microsoft.Extensions.Configuration.IConfiguration.</returns> private static IConfiguration LoadAppSettings(string appSettingsFileName) { return(AppSettingsUtility.LoadAppSettings( Directory.GetCurrentDirectory(), appSettingsFileName )); }
/// <summary> /// Loads the application settings. /// </summary> /// <param name="config">The configuration.</param> /// <param name="appSettings">The application settings.</param> /// <returns>false when the configuration was not found, otherwise true.</returns> public static bool LoadAppSettings(RollbarConfig config, IConfiguration appSettings) { Assumption.AssertNotNull(config, nameof(config)); const string rollbarAppConfigSectionName = "Rollbar"; return(AppSettingsUtility.LoadAppSettings(config, rollbarAppConfigSectionName, appSettings)); }
/// <summary> /// Deduces the rollbar telemetry configuration. /// </summary> /// <param name="configuration">The configuration.</param> /// <returns></returns> public static ITelemetryConfig DeduceRollbarTelemetryConfig(IConfiguration configuration) { TelemetryConfig config = new TelemetryConfig(); AppSettingsUtility.LoadAppSettings(config, configuration); TelemetryCollector.Instance.Config.Reconfigure(config); return(config); }
/// <summary> /// Deduces the rollbar telemetry configuration. /// </summary> /// <param name="configuration">The configuration.</param> /// <returns></returns> public static IRollbarTelemetryOptions DeduceRollbarTelemetryConfig(IConfiguration configuration) { RollbarTelemetryOptions config = new(); AppSettingsUtility.LoadAppSettings(config, configuration); RollbarTelemetryCollector.Instance?.Config?.Reconfigure(config); return(config); }
/// <summary> /// Loads the application settings. /// </summary> /// <param name="config">The configuration.</param> /// <param name="appSettingsFolderPath">The application settings folder path.</param> /// <param name="appSettingsFileName">Name of the application settings file.</param> /// <returns>false when the configuration was not found, otherwise true.</returns> public static bool LoadAppSettings(RollbarConfig config, string appSettingsFolderPath, string appSettingsFileName) { Assumption.AssertNotNull(config, nameof(config)); IConfiguration appSettingsConfig = AppSettingsUtility.LoadAppSettings(appSettingsFolderPath, appSettingsFileName); if (appSettingsConfig == null) { return(false); } AppSettingsUtility.LoadAppSettings(config, appSettingsConfig); return(true); }
/// <summary> /// Loads the application settings. /// </summary> /// <param name="config">The configuration.</param> /// <returns>false when the configuration was not found, otherwise true.</returns> public static bool LoadAppSettings(TelemetryConfig config) { Assumption.AssertNotNull(config, nameof(config)); IConfiguration appSettingsConfig = AppSettingsUtility.LoadAppSettings(); if (appSettingsConfig == null) { return(false); } AppSettingsUtility.LoadAppSettings(config, appSettingsConfig); return(true); }
/// <summary> /// Loads the application settings. /// </summary> /// <param name="config">The configuration.</param> /// <returns>false when the configuration was not found, otherwise true.</returns> public static bool LoadAppSettings(RollbarInfrastructureConfig config) { Assumption.AssertNotNull(config, nameof(config)); IConfiguration?appSettingsConfig = AppSettingsUtility.LoadAppSettings(); if (appSettingsConfig == null) { return(false); } AppSettingsUtility.LoadAppSettings(config, appSettingsConfig); return(true); }
/// <summary> /// Loads the application settings. /// </summary> /// <returns>Microsoft.Extensions.Configuration.IConfiguration.</returns> private static IConfiguration LoadAppSettings() { return(AppSettingsUtility.LoadAppSettings("appsettings.json")); }
/// <summary> /// Loads the provided configuration object based on found configuration store (if any). /// </summary> /// <param name="config">The configuration.</param> /// <returns><c>true</c> if configuration was found, <c>false</c> otherwise.</returns> public bool Load(TelemetryConfig config) { return(AppSettingsUtility.LoadAppSettings(config)); }
/// <summary> /// Loads the provided configuration object based on found configuration store (if any). /// </summary> /// <param name="config">The configuration.</param> /// <returns><c>true</c> if configuration was found, <c>false</c> otherwise.</returns> public bool Load(RollbarConfig config) { return(AppSettingsUtility.LoadAppSettings(config)); }
/// <summary> /// Loads the provided configuration object based on found configuration store (if any). /// </summary> /// <param name="config">The configuration.</param> /// <returns><c>true</c> if configuration was found, <c>false</c> otherwise.</returns> public bool Load(RollbarTelemetryOptions config) { return(AppSettingsUtility.LoadAppSettings(config)); }
/// <summary> /// Loads the provided configuration object based on found configuration store (if any). /// </summary> /// <param name="config">The configuration.</param> /// <returns><c>true</c> if configuration was found, <c>false</c> otherwise.</returns> public bool Load(RollbarInfrastructureConfig config) { return(AppSettingsUtility.LoadAppSettings(config)); }