refactored code to breakdown init function, moved schema_util outside producer module, renamed files

This commit is contained in:
aishwarya-raimule
2023-01-09 18:15:35 +05:30
parent 8adc55bd40
commit 1ad5c94ee2
4 changed files with 60 additions and 60 deletions

52
main.go
View File

@@ -3,12 +3,12 @@ package main
import (
config "com.navi.medici.janus/config"
lib "com.navi.medici.janus/lib"
producer_module "com.navi.medici.janus/producer"
producer_client "com.navi.medici.janus/producer"
"com.navi.medici.janus/schema"
server "com.navi.medici.janus/server"
"github.com/spf13/viper"
"log"
"strings"
)
var (
@@ -16,8 +16,27 @@ var (
cors string
)
func init() {
const metrics_port = "4000"
func init() {
configs := getConfigs()
port = configs.Server.Port
log.Printf("PORT IS: %v", port)
log.Printf(configs.Kafka.Bootstrap_Servers)
log.Printf(configs.SchemaRegistry.Endpoint)
schema.InitializeSchemaHandler(configs)
producer_client.InitializeProducers(configs.Kafka, configs.Env)
for i := 0; i < 2; i++ {
go lib.ProcessProtobufRequestChannel(configs.Kafka.Kafka_Topic_Protobuf)
}
for i := 0; i < configs.Server.Goroutines; i++ {
go lib.ProcessJsonRequestChannel(configs.Kafka.Kafka_Topic_Json)
}
}
func getConfigs() config.Configurations {
viper.SetConfigName("config")
viper.AddConfigPath("./config")
viper.SetConfigType("yml")
@@ -46,37 +65,14 @@ func init() {
configuration.Kafka.Sasl_User = viper.GetString(configuration.Kafka.Sasl_User)
configuration.Kafka.Sasl_Password = viper.GetString(configuration.Kafka.Sasl_Password)
//}
port = configuration.Server.Port
cors = viper.GetString(configuration.Server.Cors)
log.Printf("PORT IS: %v", port)
log.Printf(configuration.Kafka.Bootstrap_Servers)
log.Printf(configuration.SchemaRegistry.Endpoint)
producer_module.SchemaRegistryEndpoint = configuration.SchemaRegistry.Endpoint
producer_module.TopicList = strings.Split(configuration.SchemaRegistry.Topics, ",")
// initialize schema version map which contains latest schema version for topic(s)
producer_module.GetSchemaVersions()
// initialize producers
producer_module.InitializeProducers(configuration.Kafka, configuration.Env)
for i := 0; i < 2; i++ {
go lib.ProcessProtobufRequestChannel(configuration.Kafka.Kafka_Topic_Protobuf)
}
for i := 0; i < configuration.Server.Goroutines; i++ {
go lib.ProcessJsonRequestChannel(configuration.Kafka.Kafka_Topic_Json)
}
return configuration
}
func main() {
log.Printf("Serving on http://0.0.0.0:", port)
httpServer, err1 := server.NewServer(port, cors)
metricsServer, err2 := server.MetricServer("4000")
metricsServer, err2 := server.MetricServer(metrics_port)
if err1 != nil {
log.Fatalln("Unable to start server, ", err1)
}