some tests and reformating
This commit is contained in:
parent
2352626598
commit
8165f2b1c0
2 changed files with 26 additions and 8 deletions
|
@ -7,4 +7,22 @@ host: 127.0.0.1
|
|||
alert_rooms:
|
||||
- "#troy:matrix.org"
|
||||
- "#ithaca:matrix.org"
|
||||
templates:
|
||||
"Test": |
|
||||
{% if alert['labels']['severity'] == 'critical' and alert['status'] == 'firing' %}
|
||||
@room<b><font color='red'>
|
||||
{% elif alert['labels']['severity'] == 'warning' and alert['status'] == 'firing' %}
|
||||
<b><font color='orange'>
|
||||
{% elif alert['status'] == 'resolved' %}
|
||||
<b><font color='green'> End of alert
|
||||
{% else %}
|
||||
<b><font>
|
||||
{% endif %}
|
||||
{{ alert['labels']['alertname'] }}: {{ alert['labels']['instance'] }} <br/>
|
||||
</font></b>
|
||||
{{ alert['annotations']['title'] }}<br/>
|
||||
{{ alert['annotations']['description'] }}<br/>
|
||||
|
||||
But this is a custom template for Cassandre, so, here is a warning:<br/>
|
||||
<blockquote>Beware of greeks bearing gifts</blockquote>
|
||||
...
|
||||
|
|
|
@ -14,7 +14,12 @@ from typing import (
|
|||
from jinja2 import BaseLoader, Environment, Template
|
||||
from .config import Config
|
||||
|
||||
default_template_raw = (
|
||||
@dataclasses.dataclass
|
||||
class Message:
|
||||
body: str
|
||||
formated_body: Optional[str]
|
||||
|
||||
DEFAULT_TEMPLATE_RAW: str = (
|
||||
"{% if alert['labels']['severity'] == 'critical' and alert['status'] == 'firing' %}"
|
||||
"@room<b><font color='red'>"
|
||||
"{% elif alert['labels']['severity'] == 'warning' and alert['status'] == 'firing' %}"
|
||||
|
@ -30,24 +35,19 @@ default_template_raw = (
|
|||
"{{ alert['annotations']['description'] }}<br/>"
|
||||
)
|
||||
|
||||
@dataclasses.dataclass
|
||||
class Message:
|
||||
body: str
|
||||
formated_body: Optional[str]
|
||||
|
||||
def load_templates(
|
||||
config: Config
|
||||
)->defaultdict[str, Template]:
|
||||
"""
|
||||
Create a dict mapping alert names to the template to use from
|
||||
the config, with a default template either from the config file
|
||||
or the default default_template_raw.
|
||||
or the default DEFAULT_TEMPLATE_RAW.
|
||||
"""
|
||||
if config.default_template is None:
|
||||
default_template = Environment(
|
||||
loader=BaseLoader
|
||||
).from_string(
|
||||
default_template_raw
|
||||
DEFAULT_TEMPLATE_RAW
|
||||
)
|
||||
else:
|
||||
default_template = Environment(
|
||||
|
|
Loading…
Reference in a new issue