{% extends 'admin/master.html' %} {% block body %}

Debug Setup Rule: {{ rule.name }}

Edit rule
{% if not preview %}

This rule is rendered per host: which Checkmk rule it creates depends on the host. Open the host debug page, pick a host, and the rule is shown as rendered for that host.

Open host debug with this rule
{% else %} {% set parsed = preview.parsed %}

Rendered from its pasted list, exactly like checkmk export_rules does, but without contacting Checkmk. Run checkmk export_rules <account> --dry-run to compare it with what Checkmk has.

{% if parsed.errors or preview.problems %}
Problems
{% endif %}
Rules the export would send ({{ preview.rules.values()|map('length')|sum }} after joining)
{% if not preview.rules %}

No rule: every row renders an empty Value or condition, or the list is not valid.

{% endif %} {% for ruleset, rules in preview.rules.items() %}
{{ ruleset }}
{% for r in rules %} {% endfor %}
FolderValueConditions
{{ r.folder }}
{{ r.value }}
{% for key, cond in r.condition.items() if cond %}{{ key }}: {{ cond }}
{% endfor %}
{% endfor %}
Rows ({{ parsed.rows|length }})

"Rules" counts the Checkmk rules a row produced over all outcomes, before rows are joined. 0 means the row's Value, service or host name condition rendered empty.

{% for name in parsed.columns %}{% endfor %} {% for row in parsed.rows %} {% set count = preview.row_counts[loop.index0] if loop.index0 < preview.row_counts|length else 0 %} {% for name in parsed.columns %}{% endfor %} {% endfor %}
row_idxRules{{ '{{ ' ~ name ~ ' }}' }}
{{ loop.index0 }}{{ count }}{{ row[name] }}
{% endif %} {% endblock %}