Beanstalk¶
The Beanstalk source can be used to read content from Beanstalk queues. This, combined with the Beanstalk Operator, allows a full-circle workflow.
Configuration Options¶
module
(required):beanstalk
paths
(required): A list of XPath-like expressions representing the JSON fields you want to extract from.reference
: An XPath-like expression representing the JSON field you want to use as a reference. (default: source name).host
(required): Host to connect to.port
(required): Port to connect over.queue_name
(required): The name of the Beanstalk queue you want to use.
Example Configuration¶
Inside the sources
section of your configuration file:
- name: beanstalk-input
module: beanstalk
paths: [content]
reference: reference
host: 127.0.0.1
port: 11300
queue_name: MYQUEUENAME
If you are expecting JSON jobs in the Beanstalk queue that look like this:
{
"content": "freeform text",
"reference": "http://example.com"
}
The above config will extract artifacts from the value of the content
key, and use the value of the reference
key as the artifact’s reference.
If you instead had JSON jobs like this:
{
"data": {
"text": "freeform text",
"more": "more text",
"ref": "http://example.com"
}
}
And you want to extract from text
and more
, with ref
as a reference, you could set up your config to account for the more complex JSON structure:
paths: [data.text, data.more]
reference: data.ref
This flexibility allows easier integration with arbitrary systems.