HTTP RPC enables you to manage your Fluentd instance through HTTP endpoints. You can use this feature as a replacement of Unix signals.
It is especially useful for environments where signals are not supported well e.g. Windows. This requires Fluentd to start not with --no-supervisor
command-line option.
By default, HTTP RPC is not enabled. To use this feature, set the rpc_endpoint
option:
<system>
rpc_endpoint 127.0.0.1:24444
</system>
Now, you can manage your Fluentd instance using an HTTP client:
$ curl http://127.0.0.1:24444/api/plugins.flushBuffers
{"ok":true}
As evident from the output above, each endpoint returns a JSON object as its response.
Endpoint | Replacement of | Description |
---|---|---|
/api/processes.interruptWorkers |
SIGINT | Stops the daemon. |
/api/processes.killWorkers |
SIGTERM | Stops the daemon. |
/api/processes.flushBuffersAndKillWorkers |
SIGUSR1 and SIGTERM | Flushes buffer and stops the daemon. |
/api/plugins.flushBuffers |
SIGUSR1 | Flushes the buffered messages. |
/api/config.gracefulReload |
SIGUSR2 | Reloads configuration. |
/api/config.reload |
SIGHUP | Reloads configuration. |
If this article is incorrect or outdated, or omits critical information, please let us know. Fluentd is an open-source project under Cloud Native Computing Foundation (CNCF). All components are available under the Apache 2 License.