summaryrefslogtreecommitdiffstats
path: root/doc/userguide/rule-management/rule-reload.rst
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 17:39:49 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 17:39:49 +0000
commita0aa2307322cd47bbf416810ac0292925e03be87 (patch)
tree37076262a026c4b48c8a0e84f44ff9187556ca35 /doc/userguide/rule-management/rule-reload.rst
parentInitial commit. (diff)
downloadsuricata-3c02481111c540a7642503dfcf0b62e8c69b6ff0.tar.xz
suricata-3c02481111c540a7642503dfcf0b62e8c69b6ff0.zip
Adding upstream version 1:7.0.3.upstream/1%7.0.3
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'doc/userguide/rule-management/rule-reload.rst')
-rw-r--r--doc/userguide/rule-management/rule-reload.rst32
1 files changed, 32 insertions, 0 deletions
diff --git a/doc/userguide/rule-management/rule-reload.rst b/doc/userguide/rule-management/rule-reload.rst
new file mode 100644
index 0000000..5c29232
--- /dev/null
+++ b/doc/userguide/rule-management/rule-reload.rst
@@ -0,0 +1,32 @@
+Rule Reloads
+============
+
+Suricata can reload the rules without restarting. This way, there
+is minimal service disruption.
+
+This works by sending Suricata a signal or by using the unix socket. When Suricata is told to reload the rules these are the basic steps it takes:
+
+* Load new config to update rule variables and values.
+* Load new rules
+* Construct new detection engine
+* Swap old and new detection engines
+* Make sure all threads are updated
+* Free old detection engine
+
+Suricata will continue to process packets normally during this process. Keep in mind though, that the system should have enough memory for both detection engines.
+
+Signal::
+
+ kill -USR2 $(pidof suricata)
+
+There are two methods available when using the Unix socket.
+
+Blocking reload ::
+
+ suricatasc -c reload-rules
+
+Non blocking reload ::
+
+ suricatasc -c ruleset-reload-nonblocking
+
+It is also possible to get information about the last reload via dedicated commands. See :ref:`standard-unix-socket-commands` for more information.