%PDF- %PDF-
Direktori : /backups/router/usr/local/opnsense/service/templates/OPNsense/Monit/ |
Current File : //backups/router/usr/local/opnsense/service/templates/OPNsense/Monit/monitrc |
# DO NOT EDIT THIS FILE -- OPNsense auto-generated file {% if not helpers.empty('OPNsense.monit.general') %} {% if not helpers.empty('OPNsense.monit.general.httpdEnabled') %} {% set httpdCredentials = OPNsense.monit.general.httpdUsername ~ ':"' ~ OPNsense.monit.general.httpdPassword ~ '"' %} {% set httpdport = "port " ~ OPNsense.monit.general.httpdPort %} set httpd unixsocket /var/run/monit.sock {{ httpdport }} allow localhost allow {{ httpdCredentials }} {% if helpers.exists('OPNsense.monit.general.httpdAllow') %} {% for allow in OPNsense.monit.general.httpdAllow.split(",") %} {% set cred = allow.split(":") %} {% if cred[1] %} {% set pass = cred[1].split() %} {% set allow = cred[0] ~ ':"' ~ pass[0] ~ '" ' ~ pass[1] %} {% endif %} allow {{ allow }} {% endfor %} {% endif %} {% if helpers.exists('OPNsense.monit.general.mmonitUrl') and OPNsense.monit.general.mmonitUrl|default('') != '' %} {% set mregister = 'register without credentials' if OPNsense.monit.general.mmonitRegisterCredentials|default('1') == '0' %} set mmonit {{ OPNsense.monit.general.mmonitUrl }} timeout {{ OPNsense.monit.general.mmonitTimeout }} seconds {{ mregister }} {% endif %} {% else %} set httpd unixsocket /var/run/monit.sock allow localhost {% endif %} set daemon {{ OPNsense.monit.general.interval }} with start delay {{ OPNsense.monit.general.startdelay }} {% if helpers.exists('OPNsense.monit.general.logfile') and OPNsense.monit.general.logfile|default('') != '' %} set logfile {{ OPNsense.monit.general.logfile }} {% else %} set logfile syslog facility log_daemon {% endif %} {% if helpers.exists('OPNsense.monit.general.statefile') and OPNsense.monit.general.statefile|default('') != '' %} set statefile {{ OPNsense.monit.general.statefile }} {% endif %} {% if helpers.exists('OPNsense.monit.general.eventqueuePath') and OPNsense.monit.general.eventqueuePath|default('') != '' %} {% set slots = '' %} {% if helpers.exists('OPNsense.monit.general.eventqueueSlots') %} {% set slots = "slots " ~ OPNsense.monit.general.eventqueueSlots %} {% endif %} set eventqueue basedir {{ OPNsense.monit.general.eventqueuePath }} {{ slots }} {% endif %} {% if helpers.exists('OPNsense.monit.general.mailserver') %} {% set port = "port " ~ OPNsense.monit.general.port if OPNsense.monit.general.port|default('') != '' %} {% set username = '' %} {% set password = '' %} {% if helpers.exists('OPNsense.monit.general.username') and helpers.exists('OPNsense.monit.general.password') %} {% set username = "username " ~ OPNsense.monit.general.username %} {% set password = "password " ~ '"' ~ OPNsense.monit.general.password ~ '"' %} {% endif %} {% if OPNsense.monit.general.ssl|default('0') == '1' %} {% set ssl = 'using ssl' %} {% set ssloptions = '' %} {% if helpers.exists('OPNsense.monit.general.sslversion') and OPNsense.monit.general.sslversion|default('') != '' %} {% set ssloptions = "version: " ~ OPNsense.monit.general.sslversion %} {% endif %} {% if helpers.exists('OPNsense.monit.general.sslverify') %} {% if OPNsense.monit.general.sslverify == '1' %} {% set ssloptions = ssloptions ~ " verify: enable" %} {% else %} {% set ssloptions = ssloptions ~ " verify: disable" %} {% endif %} {% endif %} {% if ssloptions != '' %} {% set ssl = ssl ~ " with options { " ~ ssloptions ~ " }" %} {% endif %} {% endif %} set mailserver {{ OPNsense.monit.general.mailserver }} {{ port }} {{ username }} {{ password }} {{ ssl }} {% endif %} {% if helpers.exists('OPNsense.monit.alert') %} {% for alert in helpers.toList('OPNsense.monit.alert') %} {% if alert.enabled|default('0') == '1' %} {% set noton = 'not on' if alert.noton|default('0') == '1' %} {% set mailformat = "mail-format { " ~ alert.format ~ " }" if alert.format|default('') != '' %} {% set reminder = "reminder on " ~ alert.reminder ~ " cycles" if alert.reminder|default('0') != '0' %} {% set events = "{ " ~ alert.events ~ " }" if alert.events|default('') != '' %} set alert {{ alert.recipient }} {{ noton }} {{ events }} {{ mailformat }} {{ reminder }} {% endif %} {% endfor %} {% endif %} {% if helpers.exists('OPNsense.monit.service') %} {% for service in helpers.toList('OPNsense.monit.service') %} {% if service.enabled|default('0') == '1' %} {% set pidfile = '' %} {% set match = '' %} {% set path = '' %} {% set address = '' %} {% set interface = '' %} {% if service.type == 'process' %} {% if service.pidfile|default('') != '' %} {% set pidfile = "pidfile " ~ service.pidfile %} {% elif service.match|default('') != '' %} {% set match = "matching " ~ service.match if service.match|default('') != '' %} {% endif %} check {{ service.type }} {{ service.name }} {{ pidfile }} {{ match }} {% elif service.type == 'host' %} {% set address = "address " ~ service.address %} check {{ service.type }} {{ service.name }} {{ address }} {% elif service.type == 'network' %} {% if service.address|default('') != '' %} {% set address = "address " ~ service.address %} {% elif service.interface|default('') != '' %} {% set interface = "interface " ~ helpers.physical_interface(service.interface) %} {% endif %} check {{ service.type }} {{ service.name }} {{ address }} {{ interface }} {% elif service.type == 'system' %} check {{ service.type }} {{ service.name }} {% else %} {% set path = "with path \"" ~ service.path ~ "\"" %} {% if service.type == 'custom' %} {% set timeout = '' %} {% if service.timeout|default('0') != 0 %} {% set timeout = "timeout " ~ service.timeout ~ " seconds" %} {% endif %} check program {{ service.name }} {{ path }} {{ timeout }} {% else %} check {{ service.type }} {{ service.name }} {{ path }} {% endif %} {% endif %} {% if service.depends is defined %} {% for dependency in service.depends.split(",") %} {% set dependency = helpers.getUUID(dependency) %} {% if dependency %} depends on {{dependency.name}} {% endif %} {% endfor %} {% endif %} {% if service.start|default('') != '' %} start program = "{{ service.start }}" with timeout {{service.starttimeout|default('30')}} seconds {% endif %} {% if service.stop|default('') != '' %} stop program = "{{ service.stop }}" {% endif %} {% if service.tests is defined %} {% for test in service.tests.split(",") %} {% set test = helpers.getUUID(test) %} {% if test.condition is defined and test.action is defined %} {% set epath = '' %} {% if test.action == 'exec' and test.path|default('') != '' %} {% set epath = test.path %} {% endif %} if {{ test.condition }} then {{ test.action }} {{ epath }} {% endif %} {% endfor %} {% endif %} {% if service.polltime is defined %} {% set polltime = service.polltime %} {% if "cycles" not in polltime.lower() %} {% set polltime = "\"" ~ polltime ~ "\"" %} {% endif %} every {{ polltime }} {% endif %} {% endif %} {% endfor %} {% endif %} {% endif %} include /usr/local/etc/monit.opnsense.d/*.conf