public MetricsExporter( MetricsOptions options, IMetricsRecorder recorder, ILogger <MetricsExporter> logger) { _options = options ?? throw new ArgumentNullException(nameof(options)); _recorder = recorder ?? throw new ArgumentNullException(nameof(recorder)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); var credential = string.IsNullOrEmpty(options.JsonPath) ? GoogleCredential.GetApplicationDefault() : GoogleCredential .FromFile(options.JsonPath) .CreateScoped(MetricServiceClient.DefaultScopes); var channel = new Channel( MetricServiceClient.DefaultEndpoint.Host, MetricServiceClient.DefaultEndpoint.Port, credential.ToChannelCredentials()); _client = MetricServiceClient.Create(channel); }
public MetricsRecordingGeolocator(IGeolocator inner, IMetricsRecorder metricsRecorder) { _inner = inner ?? throw new ArgumentNullException(nameof(inner)); _metricsRecorder = metricsRecorder ?? throw new ArgumentNullException(nameof(metricsRecorder)); }