diff options
author | Kim <kim.sidney@gmail.com> | 2019-03-25 21:33:43 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-25 21:33:43 +0100 |
commit | 5679114d227e86acc3da5ad89ce4f8422f1dae8b (patch) | |
tree | 2a3101622724e64f71be124e6a807c529130b845 /docs/system/eventhandler.rst | |
parent | 4963d3ec64246ba0bc29c20ef9ca697d55c92c17 (diff) | |
parent | 15220c47f4a3aed81fbdeac949e97a4ac3bcbf49 (diff) | |
download | vyos-documentation-5679114d227e86acc3da5ad89ce4f8422f1dae8b.tar.gz vyos-documentation-5679114d227e86acc3da5ad89ce4f8422f1dae8b.zip |
Merge pull request #20 from rebortg/add/system
Add/system
Diffstat (limited to 'docs/system/eventhandler.rst')
-rw-r--r-- | docs/system/eventhandler.rst | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/docs/system/eventhandler.rst b/docs/system/eventhandler.rst new file mode 100644 index 00000000..6204abcc --- /dev/null +++ b/docs/system/eventhandler.rst @@ -0,0 +1,48 @@ +.. _event-handler: + +Event Handler +------------- + +Event handler allows you to execute scripts when a string that matches a regex appears in a text stream (e.g. log file). + +It uses "feeds" (output of commands, or a named pipes) and "policies" that define what to execute if a regex is matched. + +.. code-block:: sh + + system + event-handler + feed <name> + description <feed description> + policy <policy name> + source + preset + syslog # Use the syslog logs for feed + custom + command <command to execute> # E.g. "tail -f /var/log/somelogfile" + named-pipe <path to a names pipe> + policy <policy name> + description <policy description> + event <event name> + description <event description> + pattern <regex> + run <command to run> + +In this small example a script runs every time a login failed and an interface goes down + +.. code-block:: sh + + vyos@vyos# show system event-handler + feed Syslog { + policy MyPolicy + source { + preset syslog + } + } + policy MyPolicy { + description "Test policy" + event BadThingsHappened { + pattern "authentication failure" + pattern "interface \.* index \d+ .* DOWN.*" + run /config/scripts/email-to-admin + } + }
\ No newline at end of file |