How to Safely Stop Logstash?

Better Stack Team
Updated on April 4, 2024

To stop a Logstash instance safely without causing issues, follow these instructions.

If you're on a systemd-based system, you can stop Logstash using the following command:

 
systemctl stop logstash

Alternatively, if you started Logstash directly without systemd, like this:

 
sudo -u logstash /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/logstash.conf

You can safely stop Logstash by sending it a SIGTERM signal:

 
kill -TERM <logstash_pid>

Alternatively, if Logstash is running in the foreground of your terminal, stopping it is as simple as pressing Ctrl + C.

Logstash will cease all operations across input, filter, and output plugins after shutdown. Before shutting down the application, it ensures all events currently being processed are fully handled.

If Logstash does not shut down as expected and you need to force it to terminate, you can start Logstash with the -pipeline.unsafe_shutdown flag. However, this approach should be used with caution, as it could lead to potential data loss.

To further protect against data loss, especially in situations where you might have to force shutdown, implementing persistent queues in your Logstash setup is advisable.

Got an article suggestion? Let us know
Explore more
Licensed under CC-BY-NC-SA

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.