Prior to this commit, each app documented its available config props in its README.adoc. Now that the functions have been moved to the function catalog, these inline docs are replaced w/ a link to the respective function catalog docs. See #524
65 lines
2.2 KiB
Plaintext
65 lines
2.2 KiB
Plaintext
//tag::ref-doc[]
|
|
= RabbitMQ Source
|
|
|
|
The "rabbit" source enables receiving messages from RabbitMQ.
|
|
|
|
The queue(s) must exist before the stream is deployed; they are not created automatically.
|
|
You can easily create a Queue using the RabbitMQ web UI.
|
|
|
|
== Input
|
|
|
|
N/A
|
|
|
|
== Output
|
|
|
|
=== Payload
|
|
|
|
* `byte[]`
|
|
|
|
== Options
|
|
|
|
The **$$rabbit$$** $$source$$ has the following options:
|
|
|
|
//tag::configuration-properties[link-to-catalog=true]
|
|
https://github.com/spring-cloud/spring-functions-catalog/tree/main/supplier/spring-rabbit-supplier#configuration-options[See Spring Functions Catalog for configuration options].
|
|
//end::configuration-properties[]
|
|
|
|
Also see the https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html[Spring Boot Documentation]
|
|
for addition properties for the broker connections and listener properties.
|
|
|
|
[[rabbitSourceRetry]]
|
|
=== A Note About Retry
|
|
NOTE: With the default _ackMode_ (*AUTO*) and _requeue_ (*true*) options, failed message deliveries will be retried
|
|
indefinitely.
|
|
Since there is not much processing in the rabbit source, the risk of failure in the source itself is small, unless
|
|
the downstream `Binder` is not connected for some reason.
|
|
Setting _requeue_ to *false* will cause messages to be rejected on the first attempt (and possibly sent to a Dead Letter
|
|
Exchange/Queue if the broker is so configured).
|
|
The _enableRetry_ option allows configuration of retry parameters such that a failed message delivery can be retried and
|
|
eventually discarded (or dead-lettered) when retries are exhausted.
|
|
The delivery thread is suspended during the retry interval(s).
|
|
Retry options are _enableRetry_, _maxAttempts_, _initialRetryInterval_, _retryMultiplier_, and _maxRetryInterval_.
|
|
Message deliveries failing with a _MessageConversionException_ are never retried; the assumption being that if a message
|
|
could not be converted on the first attempt, subsequent attempts will also fail.
|
|
Such messages are discarded (or dead-lettered).
|
|
|
|
== Build
|
|
|
|
```
|
|
$ ./mvnw clean install -PgenerateApps
|
|
$ cd apps
|
|
```
|
|
You can find the corresponding binder based projects here.
|
|
You can then cd into one of the folders and build it:
|
|
```
|
|
$ ./mvnw clean package
|
|
```
|
|
|
|
== Examples
|
|
|
|
```
|
|
java -jar rabbit-source.jar --rabbit.queues=
|
|
```
|
|
|
|
//end::ref-doc[]
|