Metrics.NET
Metrics.NET copied to clipboard
Type initializer exception in Metrics.MetricsErrorHandler (NRE in cctor) when starting Metrics.NET in my service
Using the code from the quick start in my service, I receive the following TypeInitializationException
:
System.TypeInitializationException: The type initializer for 'Metrics.MetricsErrorHandler' threw an exception. ---> System.NullReferenceException: Object reference not set to an instance of an object.
at Metrics.MetricsErrorHandler..cctor()
--- End of inner exception stack trace ---
at Metrics.MetricsErrorHandler.get_Handler()
at Metrics.PerfCounters.PerformanceCounters.Register(MetricsContext context, String name, Unit unit, String category, String counter, String instance, Func`2 derivate, MetricTags tags)
at Metrics.PerfCounters.PerformanceCounters.RegisterSystemCounters(MetricsContext context)
at Metrics.PerformanceCountersConfigExtensions.<>c__DisplayClass3_0.<WithSystemCounters>b__0(MetricsContext ctx, Func`1 hs)
at Metrics.MetricsConfig.<>c__DisplayClass18_0.<WithConfigExtension>b__0(MetricsContext m, Func`1 h)
at Metrics.MetricsConfig.WithConfigExtension[T](Func`3 extension, Func`1 defaultValueProvider)
at Metrics.MetricsConfig.WithConfigExtension(Action`2 extension)
at Metrics.PerformanceCountersConfigExtensions.WithSystemCounters(MetricsConfig config, String context)
at Metrics.PerformanceCountersConfigExtensions.WithAllCounters(MetricsConfig config, String systemContext, String applicationContext)
In-use code looks like this:
try
{
Metric.Config
.WithHttpEndpoint("http://localhost:50000/")
.WithAllCounters();
}
catch (Exception ex)
{
this.Log().Error("Could not start Metrics.NET", ex);
}
Using v0.4.8.
Same here.
Error happens at this line:
private static readonly Meter errorMeter = Metric.Internal.Meter("Metrics Errors", Unit.Errors);
Metric.Internal is null when debugging
did anyone have any other answer for this rather vague error? I am getting this error occur on one server but not another, can't work out what it is unhappy about!
The project is now worked on in a different repository: https://github.com/Recognos/Metrics.NET Same issue with the cause for the exception: https://github.com/Recognos/Metrics.NET/issues/58