/// <summary> /// Deduces the rollbar configuration. /// </summary> /// <param name="configuration">The configuration.</param> /// <returns></returns> public static IRollbarInfrastructureConfig DeduceRollbarConfig(IConfiguration configuration) { if (RollbarInfrastructure.Instance.Config?.RollbarLoggerConfig?.RollbarDestinationOptions?.AccessToken != null) { return(RollbarInfrastructure.Instance.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"; RollbarInfrastructureConfig rollbarConfig = new(defaultAccessToken); AppSettingsUtility.LoadAppSettings(rollbarConfig, configuration); if (rollbarConfig.RollbarLoggerConfig.RollbarDestinationOptions.AccessToken == defaultAccessToken) { const string error = "Rollbar.NET notifier is not configured properly. A valid access token needs to be specified."; throw new RollbarException(InternalRollbarError.ConfigurationError, error); } if (RollbarInfrastructure.Instance.IsInitialized) { RollbarInfrastructure.Instance.Config?.Reconfigure(rollbarConfig !); } else { RollbarInfrastructure.Instance.Init(rollbarConfig); } RollbarLocator.RollbarInstance .Configure(rollbarConfig.RollbarLoggerConfig); return(rollbarConfig); }
/// <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)); }