/// <summary> /// Uses Sentry integration. /// </summary> /// <param name="builder">The builder.</param> /// <param name="dsn">The DSN.</param> /// <returns></returns> public static IWebHostBuilder UseSentry(this IWebHostBuilder builder, string dsn) => builder.UseSentry(o => o.Init(i => { if (!Dsn.IsDisabled(dsn)) { // If it's invalid, let ctor throw i.Dsn = new Dsn(dsn); } }));
public static IHub FromOptions(SentryOptions options) { options.SetupLogging(); var dsn = options.Dsn ?? DsnLocator.FindDsnStringOrDisable(); if (Dsn.IsDisabled(dsn)) { options.DiagnosticLogger?.LogWarning("Init was called but no DSN was provided nor located. Sentry SDK will be disabled."); return(DisabledHub.Instance); } return(new Hub(options)); }
public void IsDisabled_EmptyStringDsn_True() => Assert.True(Dsn.IsDisabled(string.Empty));
public void IsDisabled_DisabledDsn_True() => Assert.True(Dsn.IsDisabled(Constants.DisableSdkDsnValue));
public void IsDisabled_NullDsn_False() => Assert.False(Dsn.IsDisabled(null));
public void IsDisabled_InvalidDsn_False() => Assert.False(Dsn.IsDisabled(DsnSamples.InvalidDsn));
public void IsDisabled_ValidDsn_False() => Assert.False(Dsn.IsDisabled(DsnSamples.ValidDsnWithSecret));