Handler¶
Note
Handlers are advanced topic which may require basic
or deeper knowledge of Python language
NOC Plugin ecosystem bases on Handlers - the Python functions which
allow to customize NOC behavior. NOC offers a lot of hooks where the
custom code can be injected to alter default behaviour. Refer to
Handlers Overview for possible handlers and examples
Naming Conventions¶
Handler is mere a string like:
noc.custom.config.filters.MyFilter3
Prefix noc means handler refers to one of NOCs modules (either
builtin, pyRule or Custom). It's possible to use other prefixes, say
for third-party python modules not integrated to NOC directly.
MyFilter3 is the function (or other callable) name in python module
noc.custom.config.filters.
Built-in¶
Built-in handlers are provided along with NOC distribution. i.e.
noc.fm.handlers.event.link.oper_up refers to function oper_up in file:
<NOC root>
+-> fm
+-> handlers
+-> event
+-> link.py
Built-in handlers usually used in event and alarm classes.
Custom¶
Custom handlers are attached to NOC with custom repo. Custom handlers
are distinguished by noc.custom prefix. i.e.
noc.custom.handlers.config.filters.MyFilter refers to functionMyFilter`
from file:
<NOC custom root>
+-> handlers
+-> config
+-> filters.py
You need to deploy custom repo in order to use custom handlers.
PyRules¶
PyRules are custom Python modules stored in NOC database. PyRule handlers
are distinguished by noc.pyrules prefix. i.e
noc.pyrules.config.filters.MyPyRuleFilter refers to MyPyRuleFilter
function from PyRule named config.filters