kafka

package
v1.17.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 16, 2021 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var SHA256 scram.HashGeneratorFcn = func() hash.Hash { return sha256.New() }
View Source
var SHA512 scram.HashGeneratorFcn = func() hash.Hash { return sha512.New() }

Functions

func SASLVersion

func SASLVersion(kafkaVersion sarama.KafkaVersion, saslVersion *int) (int16, error)

Types

type Config

type Config struct {
	SASLAuth
	tls.ClientConfig

	Version          string `toml:"version"`
	ClientID         string `toml:"client_id"`
	CompressionCodec int    `toml:"compression_codec"`

	// EnableTLS deprecated
	EnableTLS *bool `toml:"enable_tls"`
}

Config common to all Kafka clients.

func (*Config) SetConfig

func (k *Config) SetConfig(config *sarama.Config) error

SetConfig on the sarama.Config object from the Config struct.

type ReadConfig

type ReadConfig struct {
	Config
}

ReadConfig for kafka clients meaning to read from Kafka.

func (*ReadConfig) SetConfig

func (k *ReadConfig) SetConfig(config *sarama.Config) error

SetConfig on the sarama.Config object from the ReadConfig struct.

type SASLAuth

type SASLAuth struct {
	SASLUsername  string `toml:"sasl_username"`
	SASLPassword  string `toml:"sasl_password"`
	SASLMechanism string `toml:"sasl_mechanism"`
	SASLVersion   *int   `toml:"sasl_version"`

	// GSSAPI config
	SASLGSSAPIServiceName        string `toml:"sasl_gssapi_service_name"`
	SASLGSSAPIAuthType           string `toml:"sasl_gssapi_auth_type"`
	SASLGSSAPIDisablePAFXFAST    bool   `toml:"sasl_gssapi_disable_pafxfast"`
	SASLGSSAPIKerberosConfigPath string `toml:"sasl_gssapi_kerberos_config_path"`
	SASLGSSAPIKeyTabPath         string `toml:"sasl_gssapi_key_tab_path"`
	SASLGSSAPIRealm              string `toml:"sasl_gssapi_realm"`

	// OAUTHBEARER config. experimental. undoubtedly this is not good enough.
	SASLAccessToken string `toml:"sasl_access_token"`
}

func (*SASLAuth) SetSASLConfig

func (k *SASLAuth) SetSASLConfig(config *sarama.Config) error

SetSASLConfig configures SASL for kafka (sarama)

func (*SASLAuth) Token

func (k *SASLAuth) Token() (*sarama.AccessToken, error)

Token does nothing smart, it just grabs a hard-coded token from config.

type WriteConfig

type WriteConfig struct {
	Config

	RequiredAcks     int  `toml:"required_acks"`
	MaxRetry         int  `toml:"max_retry"`
	MaxMessageBytes  int  `toml:"max_message_bytes"`
	IdempotentWrites bool `toml:"idempotent_writes"`
}

WriteConfig for kafka clients meaning to write to kafka

func (*WriteConfig) SetConfig

func (k *WriteConfig) SetConfig(config *sarama.Config) error

SetConfig on the sarama.Config object from the WriteConfig struct.

type XDGSCRAMClient

type XDGSCRAMClient struct {
	*scram.Client
	*scram.ClientConversation
	scram.HashGeneratorFcn
}

func (*XDGSCRAMClient) Begin

func (x *XDGSCRAMClient) Begin(userName, password, authzID string) (err error)

func (*XDGSCRAMClient) Done

func (x *XDGSCRAMClient) Done() bool

func (*XDGSCRAMClient) Step

func (x *XDGSCRAMClient) Step(challenge string) (response string, err error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL