I have this code
public static void AddMeter(List<string> meter)
{
using MeterProvider meterProvider = Sdk.CreateMeterProviderBuilder()
.AddMeter("Meter.Errors")
.AddMeter("Meter.Prompts")
.AddPrometheusHttpListener(options => options.UriPrefixes = new string[] { "http://*:9184/" })
.Build();
}
And What I am trying to do is adding meters (.AddMeter()) by iteration.
so something like this;
using MeterProvider meterProvider = Sdk.CreateMeterProviderBuilder()
foreach (var meter in meters)
{
.AddMeter(meter)
}
.AddPrometheusHttpListener(options => options.UriPrefixes = new string[] { "http://*:9184/" })
.Build();
What would be the correct synax for this?
Do you mean something like this?:
Basically you just store the result of
Sdk.CreateMeterProviderBuilder()in a variable, call.AddMeter()in a loop updating that variable, and then call the rest of what you need on the result of that variable. There's nothing particularly special about the syntax of a fluid API like this, each method is simply returning the same updated object which can be stored in a variable like any other.