kafka-grpc remote_server
kafka-grpc remote_server
The kafka-grpc remote_server binding for adapting kafka
topic streams to grpc
request-response streams.
kafka_grpc_proxy:
type: kafka-grpc
kind: remote_server
entry: kafka_cache_client
options:
acks: leader_only
idempotency:
metadata: idempotency-key
correlation:
headers:
service: zilla:service
method: zilla:method
correlation-id: zilla:correlation-id
reply-to: zilla:reply-to
routes:
- when:
- topic: requests
reply-to: responses
method: example.EchoService/*
exit: grpc
with:
scheme: http
authority: localhost:7151
Configuration (* required)
entry*
string
| Pattern:^[a-zA-Z]+[a-zA-Z0-9\\._\\-]*$
The name of the binding that will be the entrypoint for Kafka streams.
kafka_grpc_proxy:
type: kafka-grpc
kind: remote_server
entry: kafka_cache_client
options
object
The kafka-grpc
specific options.
options:
acks: leader_only
idempotency:
metadata: idempotency-key
correlation:
headers:
service: zilla:service
method: zilla:method
correlation-id: zilla:correlation-id
reply-to: zilla:reply-to
options.acks
enum
[none
,leader_only
,in_sync_replicas
] | Default:in_sync_replicas
The kafka
acknowledgment mode.
options.idempotency
object
Metadata header used to specify the idempotency key.
idempotency.metadata
string
| Default:idempotency-key
The grpc
metadata header name for idempotency key.
options.correlation
object
Kafka request message headers injected.
correlation.headers
object
Kafka request message correlation header names used.
headers.service
string
| Default:zilla:service
Kafka header name for grpc
service.
headers.method
string
| Default:zilla:method
Kafka header name for grpc
method.
headers.correlation-id
string
| Default:zilla:correlation-id
Kafka header name for request-response correlation identifier.
headers.reply-to
string
| Default:zilla:reply-to
Kafka header name for reply-to topic.
routes*
array
ofobject
Conditional kafka-grpc
specific routes.
routes:
- guarded:
my_guard:
- echo:messages
when:
- topic: requests
reply-to: responses
method: example.EchoService/*
exit: grpc
with:
scheme: http
authority: localhost:7151
routes[].guarded
object
as map of namedarray
ofstring
Roles required by named guard.
routes:
- guarded:
my_guard:
- echo:messages
routes[].when
array
ofobject
List of conditions (any match) to match this route when adapting kafka
topic streams to grpc
request-response streams. Read more: When a route matches
routes:
- when:
- topic: requests
reply-to: responses
method: example.EchoService/*
when[].topic*
string
The name of a Kafka topic for requests.
when[].key
string
The name of a Kafka topic for requests.
when[].headers
object
as map of namedstring
properties
Header name value pairs (all match).
when[].reply-to*
string
The name of the Kafka topic for correlated responses.
when[].method
string
| Pattern:^(?<Service>[^/]+)/(?<Method>[^/]+)
Pattern matching the fully qualified name of a grpc
service method, in the format <service>/<method>
allowing wildcard *
for the method to indicate any method.
routes[].exit
string
Next binding when following this route.
routes:
- when:
...
exit: kafka_cache_client
routes[].with*
object
Kafka parameters for matched route when adapting grpc
request-response streams to kafka
topic fetch streams.
with:
scheme: http
authority: localhost:7151
with.scheme*
string
The grpc
request scheme.
with.authority*
string
The grpc
request authority.
telemetry
object
Defines the desired telemetry for the binding.
telemetry.metrics
array
Telemetry metrics to track
telemetry:
metrics:
- stream.*
- grpc.*