-
Notifications
You must be signed in to change notification settings - Fork 1
/
initClients.go
38 lines (33 loc) · 921 Bytes
/
initClients.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package main
import (
"fmt"
"github.com/krallistic/kazoo-go"
"gopkg.in/Shopify/sarama.v1"
)
var zookeeperClient *kazoo.Kazoo
var brokerClient sarama.Client
//初始化连接
func initClients() {
fmt.Println("Init zookeeper client with connection string: ", *zookeeperConnect)
var err error
zookeeperClient, err = kazoo.NewKazooFromConnectionString(*zookeeperConnect, nil)
if err != nil {
fmt.Println("Error Init zookeeper client with connection string:", *zookeeperConnect)
panic(err)
}
// 获取kafka地址
brokers, err := zookeeperClient.BrokerList()
if err != nil {
fmt.Println("Error reading brokers from zk")
panic(err)
}
//初始化kafka
fmt.Println("Init Kafka Client with Brokers:", brokers)
config := sarama.NewConfig()
brokerClient, err = sarama.NewClient(brokers, config)
if err != nil {
fmt.Println("Error Init Kafka Client")
panic(err)
}
fmt.Println("Done Init Clients")
}