dynamic
A special broker type where the outputs are identified by unique labels and can be created, changed and removed during runtime via a REST API.
# Config fields, showing default values
output:
label: ""
dynamic:
outputs: {}
prefix: ""
The broker pattern used is always fan_out
, meaning each message will be delivered to each dynamic output.
Fields
outputs
A map of outputs to statically create.
Type: object
Default: {}
prefix
A path prefix for HTTP endpoints that are registered.
Type: string
Default: ""
Examples
- Dynamic Output with stdout & file
Demonstrates a dynamic output composed of a stdout and a file output, identified by 'stdout_output_id' and 'file_output_id'.
output:
dynamic:
outputs:
file_output_id:
file:
path: ./foo/bar.baz
stdout_output_id:
stdout: {}
Endpoints
GET /outputs
Returns a JSON object detailing all dynamic outputs, providing information such as their current uptime and configuration.
GET /outputs/{id}
Returns the configuration of an output.
POST /outputs/{id}
Creates or updates an output with a configuration provided in the request body (in YAML or JSON format).
DELETE /outputs/{id}
Stops and removes an output.
GET /outputs/{id}/uptime
Returns the uptime of an output as a duration string (of the form "72h3m0.5s").