Skip to content

Commit

Permalink
Support more encodings for kafka.consumer in OTel Ingester
Browse files Browse the repository at this point in the history
Signed-off-by: Sam Xie <xsambundy@gmail.com>
  • Loading branch information
XSAM committed Oct 20, 2020
1 parent 3d99871 commit ce6ff12
Show file tree
Hide file tree
Showing 4 changed files with 36 additions and 1 deletion.
7 changes: 6 additions & 1 deletion cmd/ingester/app/flags.go
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,12 @@ func AddOTELFlags(flagSet *flag.FlagSet) {
flagSet.String(
KafkaConsumerConfigPrefix+SuffixEncoding,
DefaultEncoding,
fmt.Sprintf(`The encoding of spans ("%s") consumed from kafka`, strings.Join(kafka.AllEncodings, "\", \"")))
fmt.Sprintf(`The encoding of spans ("%s") consumed from kafka`, strings.Join(
append(kafka.AllEncodings,
kafka.EncodingZipkinJSON,
kafka.EncodingZipkinProto,
kafka.EncodingOTLPProto,
), "\", \"")))
auth.AddFlags(KafkaConsumerConfigPrefix, flagSet)
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,14 @@ func MustOtelEncodingForJaegerEncoding(jaegerEncoding string) string {
return "jaeger_proto"
case kafka.EncodingJSON:
return "jaeger_json"
case kafka.EncodingOTLPProto:
return "otlp_proto"
case kafka.EncodingZipkinProto:
return "zipkin_proto"
case kafka.EncodingZipkinJSON:
return "zipkin_json"
case kafka.EncodingZipkinThrift:
return "zipkin_thrift"
}

panic(jaegerEncoding + " is not a supported kafka encoding in the OTEL collector.")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,22 @@ func TestMustOtelEncodingForJaegerEncoding(t *testing.T) {
in: kafka.EncodingJSON,
expected: "jaeger_json",
},
{
in: kafka.EncodingOTLPProto,
expected: "otlp_proto",
},
{
in: kafka.EncodingZipkinProto,
expected: "zipkin_proto",
},
{
in: kafka.EncodingZipkinJSON,
expected: "zipkin_json",
},
{
in: kafka.EncodingZipkinThrift,
expected: "zipkin_thrift",
},
{
in: "not-an-encoding",
expectsPanic: true,
Expand Down
6 changes: 6 additions & 0 deletions plugin/storage/kafka/options.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,12 @@ const (
EncodingProto = "protobuf"
// EncodingZipkinThrift is used for spans encoded as Zipkin Thrift.
EncodingZipkinThrift = "zipkin-thrift"
// EncodingZipkinProto is used for spans encoded as Zipkin Protobuf.
EncodingZipkinProto = "zipkin-proto"
// EncodingZipkinJSON is used for spans encoded as Zipkin JSON.
EncodingZipkinJSON = "zipkin-json"
// EncodingOTLPProto is used for spans encoded as OTLP Protobuf.
EncodingOTLPProto = "otlp-proto"

configPrefix = "kafka.producer"
suffixBrokers = ".brokers"
Expand Down

0 comments on commit ce6ff12

Please sign in to comment.