master
go 40 lines 799 Bytes
Raw
1 // SPDX-License-Identifier: GPL-3.0-or-later
2
3 package zookeeper
4
5 import (
6 "crypto/tls"
7 "errors"
8 "fmt"
9
10 "github.com/netdata/netdata/go/plugins/pkg/tlscfg"
11 "github.com/netdata/netdata/go/plugins/plugin/go.d/pkg/socket"
12 )
13
14 func (c *Collector) verifyConfig() error {
15 if c.Address == "" {
16 return errors.New("address not set")
17 }
18 return nil
19 }
20
21 func (c *Collector) initZookeeperFetcher() (fetcher, error) {
22 var tlsConf *tls.Config
23 var err error
24
25 if c.UseTLS {
26 tlsConf, err = tlscfg.NewTLSConfig(c.TLSConfig)
27 if err != nil {
28 return nil, fmt.Errorf("creating tls config : %v", err)
29 }
30 }
31
32 sock := socket.New(socket.Config{
33 Address: c.Address,
34 Timeout: c.Timeout.Duration(),
35 TLSConf: tlsConf,
36 MaxReadLines: 2000,
37 })
38
39 return &zookeeperFetcher{Client: sock}, nil
40 }