public MBLoggingScopeHttpMessageHandler(ILogger logger, HttpClientOptions options)
 {
     _logger = logger ?? throw new ArgumentNullException(nameof(logger));
     _       = options ?? throw new ArgumentNullException(nameof(options));
     _maskedRequestUrlParts =
         new HashSet <string>(options.RequestMasking?.UrlParts ?? Enumerable.Empty <string>());
     _maskTemplate = string.IsNullOrWhiteSpace(options.RequestMasking?.MaskTemplate)
         ? "*****"
         : options.RequestMasking.MaskTemplate;
 }
예제 #2
0
        public MBHttpClient(HttpClient client, HttpClientOptions options,
                            ICorrelationContextFactory correlationContextFactory, ICorrelationIdFactory correlationIdFactory)
        {
            _client  = client;
            _options = options;
            if (!string.IsNullOrWhiteSpace(_options.CorrelationContextHeader))
            {
                var correlationContext = correlationContextFactory.Create();
                _client.DefaultRequestHeaders.TryAddWithoutValidation(_options.CorrelationContextHeader,
                                                                      correlationContext);
            }

            if (!string.IsNullOrWhiteSpace(_options.CorrelationIdHeader))
            {
                var correlationId = correlationIdFactory.Create();
                _client.DefaultRequestHeaders.TryAddWithoutValidation(_options.CorrelationIdHeader,
                                                                      correlationId);
            }
        }
예제 #3
0
 public MBHttpLoggingFilter(ILoggerFactory loggerFactory, HttpClientOptions options)
 {
     _loggerFactory = loggerFactory ?? throw new ArgumentNullException(nameof(loggerFactory));
     _options       = options;
 }