protected sealed override void DoInitialize(ILog log, IMetricScope rootMetricScope, AirlockEnvironmentVariables environmentVariables, out IRoutingKeyFilter routingKeyFilter, out IAirlockEventProcessorProvider processorProvider) { routingKeyFilter = new DefaultRoutingKeyFilter(RoutingKey.MetricsSuffix); var graphiteUri = GetGraphiteUri(log, environmentVariables); processorProvider = new DefaultAirlockEventProcessorProvider <MetricEvent, MetricEventSerializer>(project => new MetricsAirlockEventProcessor(graphiteUri, log)); }
protected sealed override void DoInitialize(ILog log, IMetricScope rootMetricScope, AirlockEnvironmentVariables environmentVariables, out IRoutingKeyFilter routingKeyFilter, out IAirlockEventProcessorProvider processorProvider) { routingKeyFilter = new DefaultRoutingKeyFilter(RoutingKey.LogsSuffix); var elasticUris = GetElasticUris(log, environmentVariables); processorProvider = new DefaultAirlockEventProcessorProvider <LogEventData, LogEventDataSerializer>(project => new LogAirlockEventProcessor(elasticUris, log)); }
private static void RunConsumer(ILog log, string[] args) { log.Info("Consumer started"); var consumerGroupId = $"group@{Dns.GetHostName()}"; var recedeGap = TryParseRecedeGap(args.FirstOrDefault()); var routingKeys = (recedeGap.HasValue ? args.Skip(1) : args).ToArray(); if (!routingKeys.Any()) { routingKeys = new[] { defaultRoutingKey } } ; var routingKeyFilter = new SampleRoutingKeyFilter(routingKeys); var processorProvider = new DefaultAirlockEventProcessorProvider <SampleEvent, SampleEventSerializer>(project => new SampleDataAirlockEventProcessor(log, recedeGap)); var settings = new ConsumerGroupHostSettings(kafkaBootstrapEndpoints, consumerGroupId, new ProcessorHostSettings(), AutoResetOffsetPolicy.Earliest); IMetricScope rootMetricScope = new RootMetricScope( new MetricConfiguration { Reporter = new FakeMetricReporter() }); var consumerMetrics = new ConsumerMetrics(settings.FlushMetricsInterval, rootMetricScope); using (new ConsumerGroupHost(settings, log, consumerMetrics, routingKeyFilter, processorProvider)) { stopSignal.Wait(Timeout.Infinite); } log.Info("Consumer finished"); }
protected sealed override void DoInitialize(ILog log, IMetricScope rootMetricScope, AirlockEnvironmentVariables environmentVariables, out IRoutingKeyFilter routingKeyFilter, out IAirlockEventProcessorProvider processorProvider) { routingKeyFilter = new DefaultRoutingKeyFilter(RoutingKey.TracesSuffix); var contrailsClientSettings = GetContrailsClientSettings(log, environmentVariables); var contrailsClient = new ContrailsClient(contrailsClientSettings, log); processorProvider = new DefaultAirlockEventProcessorProvider <Span, SpanAirlockSerializer>(project => new TracingAirlockEventProcessor(contrailsClient, log, maxCassandraTasks: 1000)); }