/// <summary> /// Add the <see cref="MetricsPrometheusFormatterBuilder" /> allowing metrics to optionally be formatted in Prometheus plain text format /// </summary> /// <param name="metricFormattingBuilder">s /// The <see cref="IMetricsOutputFormattingBuilder" /> used to configure Prometheus formatting /// options. /// </param> /// <param name="options">The Prometheus formatting options to use.</param> /// <returns> /// An <see cref="IMetricsBuilder" /> that can be used to further configure App Metrics. /// </returns> public static IMetricsBuilder AsPrometheusPlainText( this IMetricsOutputFormattingBuilder metricFormattingBuilder, MetricsPrometheusOptions options) { if (metricFormattingBuilder == null) { throw new ArgumentNullException(nameof(metricFormattingBuilder)); } var formatter = new MetricsPrometheusTextOutputFormatter(options); return(metricFormattingBuilder.Using(formatter, false)); }
public void Configure(MetricEndpointsOptions options) { var prometheusOptions = new MetricsPrometheusOptions(); options.EnvironmentInfoEndpointEnabled = true; options.EnvInfoEndpointOutputFormatter = new EnvInfoJsonOutputFormatter(); options.MetricsEndpointEnabled = true; options.MetricsEndpointOutputFormatter = new MetricsPrometheusProtobufOutputFormatter(prometheusOptions); options.MetricsTextEndpointEnabled = true; options.MetricsTextEndpointOutputFormatter = new MetricsPrometheusTextOutputFormatter(prometheusOptions); }
/// <summary> /// Add the <see cref="MetricsPrometheusFormatterBuilder" /> allowing metrics to optionally be formatted in Prometheus plain text format /// </summary> /// <param name="metricFormattingBuilder">s /// The <see cref="IMetricsOutputFormattingBuilder" /> used to configure Prometheus formatting /// options. /// </param> /// <param name="setupAction">The Prometheus formatting options to use.</param> /// <returns> /// An <see cref="IMetricsBuilder" /> that can be used to further configure App Metrics. /// </returns> public static IMetricsBuilder AsPrometheusPlainText( this IMetricsOutputFormattingBuilder metricFormattingBuilder, Action <MetricsPrometheusOptions> setupAction) { if (metricFormattingBuilder == null) { throw new ArgumentNullException(nameof(metricFormattingBuilder)); } if (setupAction == null) { throw new ArgumentNullException(nameof(setupAction)); } var options = new MetricsPrometheusOptions(); setupAction.Invoke(options); var formatter = new MetricsPrometheusTextOutputFormatter(options); return(metricFormattingBuilder.Using(formatter, false)); }