camel-grpc-kafka-connector sink configuration

Connector Description: Expose gRPC endpoints and access external gRPC endpoints.

When using camel-grpc-kafka-connector as sink make sure to use the following Maven dependency to have support for the connector:

<dependency>
  <groupId>org.apache.camel.kafkaconnector</groupId>
  <artifactId>camel-grpc-kafka-connector</artifactId>
  <version>x.x.x</version>
  <!-- use the same version as your Camel Kafka connector version -->
</dependency>

To use this sink connector in Kafka connect you’ll need to set the following connector.class

connector.class=org.apache.camel.kafkaconnector.grpc.CamelGrpcSinkConnector

The camel-grpc sink connector supports 25 options, which are listed below.

Name Description Default Priority

camel.sink.path.host

Required The gRPC server host name. This is localhost or 0.0.0.0 when being a consumer or remote server host name when using producer.

HIGH

camel.sink.path.port

Required The gRPC local or remote server port.

HIGH

camel.sink.path.service

Required Fully qualified service name from the protocol buffer descriptor file (package dot service definition name).

HIGH

camel.sink.endpoint.autoDiscoverClientInterceptors

Setting the autoDiscoverClientInterceptors mechanism, if true, the component will look for a ClientInterceptor instance in the registry automatically otherwise it will skip that checking.

true

MEDIUM

camel.sink.endpoint.flowControlWindow

The HTTP/2 flow control window size (MiB).

1048576

MEDIUM

camel.sink.endpoint.maxMessageSize

The maximum message size allowed to be received/sent (MiB).

4194304

MEDIUM

camel.sink.endpoint.lazyStartProducer

Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel’s routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.

false

MEDIUM

camel.sink.endpoint.method

gRPC method name.

MEDIUM

camel.sink.endpoint.producerStrategy

The mode used to communicate with a remote gRPC server. In SIMPLE mode a single exchange is translated into a remote procedure call. In STREAMING mode all exchanges will be sent within the same request (input and output of the recipient gRPC service must be of type 'stream'). One of: [SIMPLE] [STREAMING].

Enum values:

  • SIMPLE

  • STREAMING

"SIMPLE"

MEDIUM

camel.sink.endpoint.streamRepliesTo

When using STREAMING client mode, it indicates the endpoint where responses should be forwarded.

MEDIUM

camel.sink.endpoint.userAgent

The user agent header passed to the server.

MEDIUM

camel.sink.endpoint.synchronous

Sets whether synchronous processing should be strictly used.

false

MEDIUM

camel.sink.endpoint.authenticationType

Authentication method type in advance to the SSL/TLS negotiation One of: [NONE] [GOOGLE] [JWT].

Enum values:

  • NONE

  • GOOGLE

  • JWT

"NONE"

MEDIUM

camel.sink.endpoint.jwtAlgorithm

JSON Web Token sign algorithm One of: [HMAC256] [HMAC384] [HMAC512].

Enum values:

  • HMAC256

  • HMAC384

  • HMAC512

"HMAC256"

MEDIUM

camel.sink.endpoint.jwtIssuer

JSON Web Token issuer.

MEDIUM

camel.sink.endpoint.jwtSecret

JSON Web Token secret.

MEDIUM

camel.sink.endpoint.jwtSubject

JSON Web Token subject.

MEDIUM

camel.sink.endpoint.keyCertChainResource

The X.509 certificate chain file resource in PEM format link.

MEDIUM

camel.sink.endpoint.keyPassword

The PKCS#8 private key file password.

MEDIUM

camel.sink.endpoint.keyResource

The PKCS#8 private key file resource in PEM format link.

MEDIUM

camel.sink.endpoint.negotiationType

Identifies the security negotiation type used for HTTP/2 communication One of: [TLS] [PLAINTEXT_UPGRADE] [PLAINTEXT].

Enum values:

  • TLS

  • PLAINTEXT_UPGRADE

  • PLAINTEXT

"PLAINTEXT"

MEDIUM

camel.sink.endpoint.serviceAccountResource

Service Account key file in JSON format resource link supported by the Google Cloud SDK.

MEDIUM

camel.sink.endpoint.trustCertCollectionResource

The trusted certificates collection file resource in PEM format for verifying the remote endpoint’s certificate.

MEDIUM

camel.component.grpc.lazyStartProducer

Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel’s routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.

false

MEDIUM

camel.component.grpc.autowiredEnabled

Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc.

true

MEDIUM

The camel-grpc sink connector has no converters out of the box.

The camel-grpc sink connector has no transforms out of the box.

The camel-grpc sink connector has no aggregation strategies out of the box.