{% load staticfiles %} {{ service }} alerts
{% for ctype_data in data %}

{{ service }} {{ ctype_data.ctype }}

{% if not ctype_data.mustbe %} This ctype is not supposed to have alerts
{% endif %} {% for sigkey, skey_data in ctype_data.sigkeys.items %}
{{ sigkey }} {% if is_default %}
Enabled by default: {% if skey_data.is_on %}yes{% else %} no{% endif %},{% endif %} {% if skey_data.limits.conf.from_sla %} sla{% endif %} warn {{ skey_data.limits.conf.warn }}, crit {{ skey_data.limits.conf.crit }}, {% if not is_default %} golovan {% if skey_data.golovans|length > 0 %} on{% else %} off{% endif %},{% endif %} juggler {% if skey_data.has_juggler or is_default and skey_data.should_have_juggler %} on{% else %} off{% endif %} {% if skey_data.has_diff and not is_default %} DIFF{% endif %}
{% if not skey_data.mustbe %} This signal is not supposed to be here
{% endif %} Limits: {% if skey_data.limits.ro %} {% for glim in skey_data.limits.golovan %} {{ glim.loc }}: {% for gfield, gval in glim.items %} {{ gfield }}: {{ gval }}{% endfor %}
{% endfor %} {% elif skey_data.limits.same_limits %} warn from: crit from: avg sec: {% if skey_data.limits.conf.from_sla %} {% endif %} {% else %}
alerts limits differ, choose the source:
{% for glim in skey_data.limits.golovan %} {% endfor %}
warn from: crit from: avg sec:
{% endif %}
{% if not is_default %} Golovan alerts: {% for gal in skey_data.golovans %} {{ gal.name }}
{% endfor %} {% if skey_data.has_juggler_inconsist %}
Juggler checks differ from conf:
conf:{{ skey_data.should_have_juggler }}, jugglers:{{ skey_data.has_juggler_list }}
{% else %} Has juggler: {{ skey_data.has_juggler_list }}
{% endif %} {% endif %} Flaps: {% if skey_data.flaps.same_flaps %} critical: stable: boost: {% else %}
flaps values differ, choose the source:
{% for jf in skey_data.flaps.juggler %} {% endfor %}
critical: stable: boost:
{% endif %}
Notifications:
Enabled: {% if skey_data.should_have_juggler %} Yes {% else %} No {% endif %}
Responsible: {% if not skey_data.users.same and not is_default %} current golem differs: {{ skey_data.users.golem }}{% endif %}
Phone calls time: {% if not skey_data.calls_time.same %} current juggler differs: {{ skey_data.calls_time.juggler_str }}{% endif %}
Other notifications: ---
Checks info: Juggler
{% if skey_data.signals %} {% for jid_data in skey_data.signals %} {% if jid_data.juggler %} {{ jid_data.juggler.juggler_id }}
golovan alerts: {% for sigdat in jid_data.juggler.golovan_signals %} {{ sigdat.service }} {% endfor %} {% for field, fdat in jid_data.juggler.items %} {% if field != 'juggler_id' and field != 'golovan_signals' %}
{{ field }}
{% if field == 'golovan_signals' %} {% else %} {{ fdat }} {% endif %}
{% endif %} {% endfor %} {% endif %} {% for gc in jid_data.golovan %}
{% for field, val in gc.items %} {{ field }} : {{ val }}
{% endfor %}
{% endfor %} {% endfor %} {% else %} No juggler checks {% endif %}
{% endfor %}

{% endfor %}
+ Add check
{% if is_default %} {% endif %}
Limits: warn from: crit from: avg sec:


Common info
Enable notifications: {% if notify_enable %} Yes {% if not is_default %}{% endif %}{% else %} No {% endif %}
Dev: {% for resp in resps %}{{ resp }} {% endfor %}
Users: {% for ru in resps_users %}{{ ru }} {% endfor %}
{% if service %} {% if not actuality.is_actual %}
{% endif %} {% if actuality.warning %}cannot get actuality: {{ actuality.warning }}{% endif %} {% endif %} {% if not is_default %} default settings {% endif %} {% if user %}

We are watching you, {{ user }}
{% endif %}