Skip to content

Commit 1de4fc0

Browse files
committed
fix: change rdkafka_options format from section to hash
Signed-off-by: Vadim Aleksandrov <[email protected]>
1 parent 8399f69 commit 1de4fc0

File tree

2 files changed

+19
-23
lines changed

2 files changed

+19
-23
lines changed

pkg/sdk/logging/model/output/kafka.go

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515
package output
1616

1717
import (
18+
"encoding/json"
19+
1820
"github.com/cisco-open/operator-tools/pkg/secret"
1921

2022
"github.com/kube-logging/logging-operator/pkg/sdk/logging/model/types"
@@ -355,6 +357,21 @@ func (e *KafkaOutputConfig) ToDirective(secretLoader secret.SecretLoader, id str
355357
} else {
356358
kafka.Params = params
357359
}
360+
361+
if e.RdkafkaOptions != nil {
362+
if rdkafkaOptions, err := types.NewStructToStringMapper(secretLoader).StringsMap(e.RdkafkaOptions); err != nil {
363+
return nil, err
364+
} else {
365+
if len(rdkafkaOptions) > 0 {
366+
marshaledRdkafkaOptions, err := json.Marshal(rdkafkaOptions)
367+
if err != nil {
368+
return nil, err
369+
}
370+
kafka.Params["rdkafka_options"] = string(marshaledRdkafkaOptions)
371+
}
372+
}
373+
}
374+
358375
if e.Buffer == nil {
359376
e.Buffer = &Buffer{}
360377
}
@@ -363,13 +380,6 @@ func (e *KafkaOutputConfig) ToDirective(secretLoader secret.SecretLoader, id str
363380
} else {
364381
kafka.SubDirectives = append(kafka.SubDirectives, buffer)
365382
}
366-
if e.RdkafkaOptions != nil {
367-
if rdkafkaOptions, err := e.RdkafkaOptions.ToDirective(secretLoader, id); err != nil {
368-
return nil, err
369-
} else {
370-
kafka.SubDirectives = append(kafka.SubDirectives, rdkafkaOptions)
371-
}
372-
}
373383

374384
if e.Format != nil {
375385
if format, err := e.Format.ToDirective(secretLoader, ""); err != nil {
@@ -383,9 +393,3 @@ func (e *KafkaOutputConfig) ToDirective(secretLoader secret.SecretLoader, id str
383393
delete(kafka.Params, "use_rdkafka")
384394
return kafka, nil
385395
}
386-
387-
func (o *RdkafkaOptions) ToDirective(secretLoader secret.SecretLoader, id string) (types.Directive, error) {
388-
return types.NewFlatDirective(types.PluginMeta{
389-
Directive: "rdkafka_options",
390-
}, o, secretLoader)
391-
}

pkg/sdk/logging/model/output/kafka_test.go

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ rdkafka_options:
7777
ssl.ca.location: /etc/ssl/certs/ca-certificates.crt
7878
ssl.certificate.location: /etc/ssl/certs/tls.crt
7979
ssl.key.location: /etc/ssl/certs/tls.key
80-
ssl.key.password: password
80+
ssl.key.password: password
8181
format:
8282
type: json
8383
buffer:
@@ -91,6 +91,7 @@ buffer:
9191
@id test
9292
brokers kafka-headless.kafka.svc.cluster.local:29092
9393
default_topic topic
94+
rdkafka_options {"sasl.mechanisms":"PLAIN","sasl.username":"user","security.protocol":"SASL_SSL","ssl.ca.location":"/etc/ssl/certs/ca-certificates.crt","ssl.certificate.location":"/etc/ssl/certs/tls.crt","ssl.key.location":"/etc/ssl/certs/tls.key","ssl.key.password":"password"}
9495
ssl_verify_hostname false
9596
<buffer tag,time>
9697
@type file
@@ -100,15 +101,6 @@ buffer:
100101
timekey_use_utc true
101102
timekey_wait 30s
102103
</buffer>
103-
<rdkafka_options>
104-
sasl.mechanisms PLAIN
105-
sasl.username user
106-
security.protocol SASL_SSL
107-
ssl.ca.location /etc/ssl/certs/ca-certificates.crt
108-
ssl.certificate.location /etc/ssl/certs/tls.crt
109-
ssl.key.location /etc/ssl/certs/tls.key
110-
ssl.key.password password
111-
</rdkafka_options>
112104
<format>
113105
@type json
114106
</format>

0 commit comments

Comments
 (0)