private static HttpClient CreateHttpClient( InfluxDBSettings influxDbSettings, HttpPolicy httpPolicy, HttpMessageHandler httpMessageHandler = null) { var client = httpMessageHandler == null ? new HttpClient() : new HttpClient(httpMessageHandler); client.BaseAddress = influxDbSettings.BaseAddress; client.Timeout = httpPolicy.Timeout; if (influxDbSettings.UserName.IsMissing() || influxDbSettings.Password.IsMissing()) { return(client); } var byteArray = Encoding.ASCII.GetBytes($"{influxDbSettings.UserName}:{influxDbSettings.Password}"); client.BaseAddress = influxDbSettings.BaseAddress; client.Timeout = httpPolicy.Timeout; client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(byteArray)); return(client); }
public DefaultLineProtocolClient(ILoggerFactory loggerFactory, InfluxDBSettings influxDbSettings) : this(loggerFactory, influxDbSettings, new HttpPolicy { FailuresBeforeBackoff = Constants.DefaultFailuresBeforeBackoff, BackoffPeriod = Constants.DefaultBackoffPeriod, Timeout = Constants.DefaultTimeout }) { }
public DefaultLineProtocolClient(ILoggerFactory loggerFactory, InfluxDBSettings influxDbSettings, HttpPolicy httpPolicy, HttpMessageHandler httpMessageHandler = null) { if (influxDbSettings == null) { throw new ArgumentNullException(nameof(influxDbSettings)); } if (httpPolicy == null) { throw new ArgumentNullException(nameof(httpPolicy)); } _httpClient = CreateHttpClient(influxDbSettings, httpPolicy, httpMessageHandler); _influxDbSettings = influxDbSettings; _policy = httpPolicy.AsPolicy(); _logger = loggerFactory.CreateLogger <DefaultLineProtocolClient>(); }
#pragma warning disable SA1118 public DefaultLineProtocolClient( ILoggerFactory loggerFactory, InfluxDBSettings influxDbSettings, HttpPolicy httpPolicy, HttpMessageHandler httpMessageHandler = null) { if (influxDbSettings == null) { throw new ArgumentNullException(nameof(influxDbSettings)); } if (httpPolicy == null) { throw new ArgumentNullException(nameof(httpPolicy)); } _httpClient = CreateHttpClient(influxDbSettings, httpPolicy, httpMessageHandler); _influxDbSettings = influxDbSettings; _backOffPeriod = httpPolicy.BackoffPeriod; _failuresBeforeBackoff = httpPolicy.FailuresBeforeBackoff; _failureAttempts = 0; _logger = loggerFactory.CreateLogger <DefaultLineProtocolClient>(); }