DE-3551 | segregating app events to different topic

This commit is contained in:
puru
2025-01-16 21:04:39 +05:30
parent abb3981b30
commit 2d5cdfaee7
5 changed files with 38 additions and 14 deletions

View File

@@ -19,6 +19,7 @@ var (
cb *gobreaker.CircuitBreaker
defaultClickstreamTopic string
litmusClickstreamTopic string
appClickstreamTopic string
)
func InitializeProducers(kafkaConfiguration config.KafkaConfigurations, env string) {
@@ -26,6 +27,7 @@ func InitializeProducers(kafkaConfiguration config.KafkaConfigurations, env stri
asyncProducer = GetAsyncProducer(kafkaConfiguration, env)
defaultClickstreamTopic = kafkaConfiguration.Kafka_Topic_Json
litmusClickstreamTopic = kafkaConfiguration.Kafka_Topic_Litmus
appClickstreamTopic = kafkaConfiguration.Kafka_Topic_App
cb = gobreaker.NewCircuitBreaker(gobreaker.Settings{
Name: "kafka-producer",
@@ -53,6 +55,10 @@ func GetLitmusClickstreamTopic() string {
return litmusClickstreamTopic
}
func GetAppClickstreamTopic() string {
return appClickstreamTopic
}
func GetAsyncProducerConfig(kafkaConfiguration config.KafkaConfigurations, env string) *sarama.Config {
config := sarama.NewConfig()
@@ -94,7 +100,7 @@ func WriteMessageToKafkaAsync(message *sarama.ProducerMessage, source string) er
asyncProducer.Input() <- message
metrics.KafkaPushTimeHist.WithLabelValues(message.Topic, source).Observe(float64(utils.NanosToMillis(time.Now().UnixNano()) - beforeKafkaPushTime))
metrics.KafkaPushCounter.WithLabelValues(message.Topic, source).Inc()
logger.Debug("Successfully written to Kafka for source " + source)
logger.Debug("Successfully written to Kafka topic : " + message.Topic + " for source : " + source)
return nil, nil
})
return err