HTTP output
July 31, 2026 ยท View on GitHub
It sends events to arbitrary HTTP endpoints. It uses POST requests to send events in batches. If a network error occurs, the batch will infinitely try to be delivered to the random endpoint.
Supports dead queue.
Config params
endpoints []string required
The list of HTTP endpoints in the following format: SCHEMA://HOST:PORT/PATH
content_type string default=application/json
Content-Type header for HTTP requests.
encoding encoder.EncodingConfig
Configure event serialization before sending. Includes:
type- codec to use for serializing events (jsonby default):
json- serializes the full event as a JSON object.raw- extracts a single field and sends its value as-is (unquoted for string fields, encoded JSON otherwise). If the field is missing an empty value is sent and a warning is logged.
params- encoder parameters, keyed by encoder type:
json- none.raw:field- event field to extract (defaultmessage); supports nested paths such aslog.message.
Example sending only the message field as a raw value:
encoding:
type: raw
params:
field: message
use_gzip bool default=false
If set, the plugin will use gzip encoding.
gzip_compression_level string default=default options=default|no|best-speed|best-compression|huffman-only
Gzip compression level. Used if use_gzip=true.
username string
Username for HTTP Basic Authentication.
password string
Password for HTTP Basic Authentication.
api_key string
Base64-encoded token for authorization; if set, overrides username/password.
ca_cert string
Path or content of a PEM-encoded CA file.
keep_alive KeepAliveConfig
Keep-alive config.
KeepAliveConfig params:
max_idle_conn_duration- idle keep-alive connections are closed after this duration. By default idle connections are closed after10s.max_conn_duration- keep-alive connections are closed after this duration. If set to0- connection duration is unlimited. By default connection duration is5m.
connection_timeout cfg.Duration default=5s
It defines how much time to wait for the connection.
workers_count cfg.Expression default=gomaxprocs*4
It defines how many workers will be instantiated to send batches.
batch_size cfg.Expression default=capacity/4
A maximum quantity of events to pack into one batch.
batch_size_bytes cfg.Expression default=0
A minimum size of events in a batch to send. If both batch_size and batch_size_bytes are set, they will work together.
batch_flush_timeout cfg.Duration default=200ms
After this timeout batch will be sent even if batch isn't full.
retry int default=10
Retries of insertion. If File.d cannot insert for this number of attempts, File.d will fall with non-zero exit code or skip message (see fatal_on_failed_insert).
fatal_on_failed_insert bool default=false
After an insert error, fall with a non-zero exit code or not. A configured deadqueue disables fatal exits.
split_batch bool default=false
Enable split big batches
retention cfg.Duration default=1s
Retention milliseconds for retry to DB.
retention_exponentially_multiplier int default=2
Multiplier for exponential increase of retention between retries
strict bool default=false
After a non-retryable write error, fall with a non-zero exit code or not
ban_period cfg.Duration default=10s
Period for which addresses will be banned in case of unavailability. If set to 0, circuit breaker is disabled.
reconnect_interval cfg.Duration default=5s
Interval for checking banned endpoints.
Generated using insane-doc