mirror of
https://github.com/vyos/vyos-documentation.git
synced 2025-10-26 08:41:46 +01:00
* order workflows and add submodule * rename gitmodules file * delete docs/.gitignore * add vyos custom linter * correct __pycache__ in gitignore * add test-coverage.py * move draw.io folder * arrange changelog, install history and about * arrange: firewall * arrange: highavailability * arrange: loadbalancing * arrange: nat * arrange: services * sort configexamples and configuration interfaces * wireles: rename wireless * rearrange: Protocols and Policy * rearrange: Firewall and Zone Policy * rearrange: Interfaces * rearrange: Interfaces * rearrange: dynamic DNS * hostinfo: add page to index * rearrange: appendix * venv: add Pipfile * rearrange: contributing * index: remove debugging * rearrange: fix all figure and refs * rearrange: commandtree * fix: cli, openvpn, install headline level * protocols: change headline * firewall: move mss clamping * ip: separate ipv4 and ipv6 * arp: move to static page * igmp: rename multicast page * Update to year 2021
48 lines
1.3 KiB
ReStructuredText
48 lines
1.3 KiB
ReStructuredText
.. _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:: none
|
|
|
|
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:: none
|
|
|
|
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
|
|
}
|
|
} |