public static HealthCheckBuilder AddHttpEndpointCheck(this HealthCheckBuilder builder, string name, Action <HttpCheckSettingsBuilder> configureAction) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (name == null) { throw new ArgumentNullException(nameof(name)); } if (configureAction == null) { throw new ArgumentNullException(nameof(configureAction)); } var settingsBuilder = new HttpCheckSettingsBuilder(name); configureAction(settingsBuilder); var settingsCollection = settingsBuilder.Build(); for (int i = 0; i < settingsCollection.Requests.Count; i++) { var request = settingsCollection.Requests[i]; var settingsName = settingsCollection.Requests.Count > 1 ? $"{settingsCollection.Name} {i+1}" : settingsCollection.Name; var settings = new HttpCheckSettings(settingsName, settingsCollection.Critical, settingsCollection.Frequency, settingsCollection.Tags, request, settingsCollection.BeforeSend); builder.AddHttpEndpointCheck(settings); } return(builder); }
public static HealthCheckBuilder AddCheck(this HealthCheckBuilder builder, string name, Func <HealthCheckContext, Task> action, IEnumerable <string> tags = null, bool critical = false, int frequency = 0) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } return(builder.Add <InlineHealthCheck>(new InlineHealthCheckSettings(name, critical, frequency, TagsHelper.FromTag(tags), action))); }
public static HealthCheckBuilder Add(this HealthCheckBuilder builder, string name, Func <HealthCheckContext, Task> action, string tag, bool critical = false, int frequency = 0) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } return(builder.AddCheck(name, action, TagsHelper.FromTag(tag), critical, frequency)); }
public static HealthCheckBuilder AddCounterCheck(this HealthCheckBuilder builder, CounterCheckOptions options) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (options == null) { throw new ArgumentNullException(nameof(options)); } var settings = new CounterCheckSettings(options.Name, options.Critical, options.Frequency, options.Tags, options.ErrorThreshold, options.WarningThreshold, options.Distributed); return(builder.AddCounterCheck(settings)); }
public static HealthCheckBuilder AddOracleCheck(this HealthCheckBuilder builder, OracleCheckOptions options) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (options == null) { throw new ArgumentNullException(nameof(options)); } var settings = new OracleCheckSettings(options.Name, options.Critical, options.Frequency, options.Tags, options.ConnectionString); return(builder.AddOracleCheck(settings)); }
public static HealthCheckBuilder AddEntityFrameworkCoreCheck <TDbContext>(this HealthCheckBuilder builder, EntityFrameworkCoreCheckOptions options) where TDbContext : DbContext { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (options == null) { throw new ArgumentNullException(nameof(options)); } var settings = new EntityFrameworkCoreCheckSettings <TDbContext>(options.Name, options.Critical, options.Frequency, options.Tags); return(builder.AddEntityFrameworkCoreCheck <TDbContext>(settings)); }
public static HealthCheckBuilder AddX509CertificateCheck(this HealthCheckBuilder builder, X509CertificateCheckOptions options) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (options == null) { throw new ArgumentNullException(nameof(options)); } var settings = new X509CertificateCheckSettings(options.Name, options.Critical, options.Frequency, options.Tags, options.Thumbprint, options.StoreName, options.StoreLocation, options.ExpirationOffsetInMinutes); return(builder.AddX509CertificateCheck(settings)); }
public static HealthCheckBuilder AddVirtualMemorySizeCheck(this HealthCheckBuilder builder, ThresholdCheckOptions options) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (options == null) { throw new ArgumentNullException(nameof(options)); } var settings = new FloorThresholdCheckSettings(options.Name, options.Critical, options.Frequency, options.Tags, options.ErrorThreshold, options.WarningThreshold); return(builder.AddVirtualMemorySizeCheck(settings)); }
public static HealthCheckBuilder AddAvailableDiskSpaceCheck(this HealthCheckBuilder builder, AvailableDiskSpaceCheckOptions options) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (options == null) { throw new ArgumentNullException(nameof(options)); } var settings = new AvailableDiskSpaceCheckSettings(options.Name, options.Critical, options.Frequency, options.Tags, options.ErrorThreshold, options.WarningThreshold, options.Drive); return(builder.AddAvailableDiskSpaceCheck(settings)); }
public static HealthCheckBuilder AddOracleCheck(this HealthCheckBuilder builder, IConfiguration configuration) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (configuration == null) { throw new ArgumentNullException(nameof(configuration)); } var options = new OracleCheckOptions(); configuration.Bind(options); return(builder.AddOracleCheck(options)); }
public static HealthCheckBuilder AddEntityFrameworkCoreCheck <TDbContext>(this HealthCheckBuilder builder, IConfiguration configuration) where TDbContext : DbContext { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (configuration == null) { throw new ArgumentNullException(nameof(configuration)); } var options = new EntityFrameworkCoreCheckOptions(); configuration.Bind(options); return(builder.AddEntityFrameworkCoreCheck <TDbContext>(options)); }
public static HealthCheckBuilder AddOracleCheck(this HealthCheckBuilder builder, string name, Action <OracleCheckSettingsBuilder> configureAction) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (name == null) { throw new ArgumentNullException(nameof(name)); } if (configureAction == null) { throw new ArgumentNullException(nameof(configureAction)); } var settingsBuilder = new OracleCheckSettingsBuilder(name); configureAction(settingsBuilder); var settings = settingsBuilder.Build(); return(builder.AddOracleCheck(settings)); }
public static HealthCheckBuilder AddEntityFrameworkCoreCheck <TDbContext>(this HealthCheckBuilder builder, string name, Action <EntityFrameworkCoreCheckSettingsBuilder <TDbContext> > configureAction) where TDbContext : DbContext { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (name == null) { throw new ArgumentNullException(nameof(name)); } if (configureAction == null) { throw new ArgumentNullException(nameof(configureAction)); } var settingsBuilder = new EntityFrameworkCoreCheckSettingsBuilder <TDbContext>(name); configureAction(settingsBuilder); var settings = settingsBuilder.Build(); return(builder.AddEntityFrameworkCoreCheck(settings)); }
public static HealthCheckBuilder AddHttpEndpointCheck(this HealthCheckBuilder builder, HttpCheckOptions options) { var settings = new HttpCheckSettings(options.Name, options.Critical, options.Frequency, options.Tags, options.Request); return(builder.Add <HttpCheck>(settings)); }
private static HealthCheckBuilder AddCounterCheck(this HealthCheckBuilder builder, CounterCheckSettings settings) { builder.Services.AddLocalCounters(); return(builder.Add <CounterCheck>(settings)); }
private static HealthCheckBuilder AddEntityFrameworkCoreCheck <TDbContext>(this HealthCheckBuilder builder, EntityFrameworkCoreCheckSettings <TDbContext> settings) where TDbContext : DbContext { builder.Services.TryAddTransient(typeof(EntityFrameworkCoreCheck <TDbContext>)); return(builder.Add <EntityFrameworkCoreCheck <TDbContext> >(settings)); }
private static HealthCheckBuilder AddHttpEndpointCheck(this HealthCheckBuilder builder, HttpCheckSettings settings) { return(builder.Add <HttpCheck>(settings)); }
private static HealthCheckBuilder AddVirtualMemorySizeCheck(this HealthCheckBuilder builder, ThresholdCheckSettings settings) { builder.Services.TryAddTransient <IVirtualMemorySizeProvider, DefaultVirtualMemorySizeProvider>(); return(builder.Add <VirtualMemorySizeCheck>(settings)); }
private static HealthCheckBuilder AddAvailableDiskSpaceCheck(this HealthCheckBuilder builder, AvailableDiskSpaceCheckSettings settings) { builder.Services.TryAddTransient <IAvailableSpaceProvider, DefaultAvailableSpaceProvider>(); return(builder.Add <AvailableDiskSpaceCheck>(settings)); }
private static HealthCheckBuilder AddOracleCheck(this HealthCheckBuilder builder, OracleCheckSettings settings) { return(builder.Add <OracleCheck>(settings)); }
private static HealthCheckBuilder AddSqlServerCheck(this HealthCheckBuilder builder, SqlServerCheckSettings settings) { return(builder.Add <SqlServerCheck>(settings)); }
private static HealthCheckBuilder AddX509CertificateCheck(this HealthCheckBuilder builder, X509CertificateCheckSettings settings) { builder.Services.TryAddTransient <ICertificateResolver, CertificateResolver>(); builder.Services.TryAddTransient(typeof(X509CertificateCheck)); return(builder.Add <X509CertificateCheck>(settings)); }