func startNewConsumer(config kafkaClient.ConsumerConfig, topic string) *kafkaClient.Consumer { config.Strategy = GetStrategy(config.Consumerid) config.WorkerFailureCallback = FailedCallback config.WorkerFailedAttemptCallback = FailedAttemptCallback consumer := kafkaClient.NewConsumer(&config) topics := map[string]int{topic: config.NumConsumerFetchers} go func() { consumer.StartStatic(topics) }() return consumer }
func startNewConsumer(config kafkaClient.ConsumerConfig, topic string, channel chan *api.Message) *kafkaClient.Consumer { // wait explicitly for topic to be created by the producer waitForTopicToBeReady(config, topic) config.Strategy = handleMessage(config.Consumerid, channel) config.WorkerFailureCallback = failedCallback config.WorkerFailedAttemptCallback = failedAttemptCallback //config.NumConsumerFetchers = 2 consumer := kafkaClient.NewConsumer(&config) topics := map[string]int{topic: config.NumConsumerFetchers} go func() { consumer.StartStatic(topics) }() return consumer }
func setupProtoConfig(config *kafka.ConsumerConfig) { config.Strategy = logLineProtoStrategy }
func setupAvroConfig(config *kafka.ConsumerConfig) { config.ValueDecoder = kafka.NewKafkaAvroDecoder(*schemaRegistry) config.Strategy = avroStrategy }