{% extends 'admin/master.html' %} {% macro attr_value(value) -%} {%- if value is mapping -%} {%- elif value is iterable and value is not string -%} {{ value|join(', ') }} {%- else -%} {{ value }} {%- endif -%} {%- endmacro %} {% block body %}

Folder Debug: {{ path }}

Account: {{ account or 'none (every host, rules only)' }}. All folders Documentation

Which host and which Export Rule gave this folder which option, in the order the export reads them, and what the merge made of each value: lists (like the contact groups) are joined, for a single value (title, site, the use flag, ...) the first one wins. Read only, nothing is sent to Checkmk or saved.

{% if error %}
{{ error }}
{% endif %} {% if folder %}
Folder options sent to Checkmk
{% if folder.attributes %} {{ attr_value(folder.attributes) }} {% else %} No folder options, the folder keeps what it has in Checkmk. {% endif %} {% if folder.hidden_contributions %}
{{ folder.hidden_contributions }} contribution(s) of hosts outside your scope are not shown and not part of the value above. The value sent to Checkmk may hold more.
{% endif %}
Contributions and merge
{% if not entries %} No host gives this folder options. {% else %}
{% for entry, notes in entries %} {% set outer = loop %} {% for note in notes %} {% if loop.first %} {% endif %} {% endfor %} {% endfor %}
# Host Export Rule and matching conditions Option Value Merge
{{ outer.index }} {{ entry.hostname }} {% if entry.kind == 'create' %} Create Empty Folder {% endif %} {% if entry.rule %} {{ entry.rule.name }} ({{ entry.rule.condition_type }}) {% for condition in entry.rule.conditions %}
matched: {{ condition }}
{% endfor %} {% for param in entry.rule.params %}
{{ param.action }}: {{ param.param }}
{% endfor %} {% else %} unknown {% endif %}
{{ note.path or '(all)' }} {% if note.value is not none %}{{ note.value }}{% endif %} {% if note.effect == 'set' %} set {% elif note.effect == 'added' %} added to the list {% elif note.effect == 'present' %} already in the list {% elif note.effect == 'same' %} same value already set {% elif note.effect == 'ignored' %} ignored, first value wins kept: {{ note.kept }} {% elif note.effect == 'dropped' %} dropped, renders to no value {% elif note.effect == 'broken' %} broken, skipped by the export {% endif %}
{% endif %}
Hosts in this folder
{% if folder.hosts %} {% for hostname in folder.hosts %} {{ hostname }}{% if not loop.last %}, {% endif %} {% endfor %} {% else %} No host lands directly in this folder. {% endif %} {% if folder.hidden_hosts %} (+{{ folder.hidden_hosts }} outside your scope) {% endif %}
{% endif %}
{% endblock %}