Skip to content

Telegram can't parse entities after message truncation with parse_mode="HTML" #2923

@iuhenio

Description

@iuhenio

What did you do?
Used Telegram integration with parse_mode="HTML"

What did you expect to see?
Alert notification in Telegram chat

What did you see instead? Under which circumstances?
Alert notification wasn't sent to chat

Environment

  • System information:

    Linux 5.4.0-109-generic x86_64

  • Alertmanager version:

    alertmanager, version 0.24.0 (branch: HEAD, revision: f484b17)
    build user: root@265f14f5c6fc
    build date: 20220325-09:31:33
    go version: go1.17.8
    platform: linux/amd64

  • Prometheus version:

    prometheus, version 2.34.0 (branch: HEAD, revision: 881111fec4332c33094a6fb2680c71fffc427275)
    build user: root@121ad7ea5487
    build date: 20220315-15:18:00
    go version: go1.17.8
    platform: linux/amd64

  • Alertmanager configuration file:

global:
  resolve_timeout: 3m
templates:
- '/etc/alertmanager/templates/*.tmpl'
receivers:
- name: alerts-test1
  telegram_configs:
  - api_url: https://api.telegram.org
    bot_token: 1657974151:BBBO9Iggg_Tif04Tg9asdfSuR83niyNOSHE  # has been changed for security reasons
    chat_id: -10075044612354    # has been changed for security reasons
    disable_notifications: false
    message: '{{ template "telegram.html.message" . }}'
    parse_mode: HTML
    send_resolved: true

route:
  group_by:
  - alertname
  group_interval: 30s
  group_wait: 15s
  receiver: alerts-test1
  repeat_interval: 1d
  • telegram.html.message template:
{{ define "telegram.html.message" }}
{{ range .Alerts }}
{{ if eq .Status "firing"}}🔥 <b>{{ .Labels.alertname }}</b> 🔥{{ else }}✅ <b>{{ .Labels.alertname }}</b> ✅{{ end }}
<b>Labels:</b>{{ range $key, $value := .Labels }}{{ if ne $key "alertname" }}
    <b>{{ $key }}</b>: <i>{{ $value }}</i>{{ end }}{{ end }}
<b>Annotations:</b>{{ range $key, $value := .Annotations }}
    <b>{{ $key }}</b>: <i>{{ $value }}</i>{{ end }}
{{ end }}
{{ end }}
  • Prometheus configuration file:
    Isn't relevant to the issue

  • Logs:

May 16 11:21:59 focal-1 alertmanager[30906]: ts=2022-05-16T08:21:59.430Z caller=telegram.go:72 level=debug integration=telegram msg="truncated message" truncated_message="\n\n🔥 <b>ExporterDown</b> 🔥\n
<b>Labels:</b>\n    <b>address</b>: <i>192.168.56.10</i>\n    <b>environment</b>: <i>testing</i>\n    <b>instance</b>: <i>192.168.56.10:9100</i>\n    <b>job</b>: <i>node_exporter</i>\n    <b>label10</b>
: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label11</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label12</b>: <i>valuevaluevaluevaluevaluevaluevaluevalu
evaluevalue</i>\n    <b>label13</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label2</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label3</b>: <i>valuev
aluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label4</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label5</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</
i>\n    <b>label6</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label7</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label8</b>: <i>valuevaluevaluevalue
valuevaluevaluevaluevaluevalue</i>\n    <b>label9</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>severity</b>: <i>critical</i>\n<b>Annotations:</b>\n    <b>description</b>: <i>Ca
n't get data from exporter</i>\n    <b>space_filler</b>: <i>Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Te
st Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test</i>\n    <b>summary</b>:
 <i>Exporter down</i>\n\n🔥 <b>ExporterDown</b> 🔥\n<b>Labels:</b>\n    <b>address</b>: <i>192.168.56.20</i>\n    <b>environment</b>: <i>testing</i>\n    <b>instance</b>: <i>192.168.56.20:9100</i>\n    
<b>job</b>: <i>node_exporter</i>\n    <b>label10</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label11</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>lab
el12</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label13</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label2</b>: <i>valuevaluevaluevaluevaluevalueva
luevaluevaluevalue</i>\n    <b>label3</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label4</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label5</b>: <i>
valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label6</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label7</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluev
alue</i>\n    <b>label8</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label9</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>severity</b>: <i>critical</i>
\n<b>Annotations:</b>\n    <b>description</b>: <i>Can't get data from exporter</i>\n    <b>space_filler</b>: <i>Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test 
Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Te
st Test Test Test Test Test</i>\n    <b>summary</b>: <i>Exporter down</i>\n\n🔥 <b>ExporterDown</b> 🔥\n<b>Labels:</b>\n    <b>address</b>: <i>192.168.56.30</i>\n    <b>environment</b>: <i>testing</i>\n
    <b>instance</b>: <i>192.168.56.30:9100</i>\n    <b>job</b>: <i>node_exporter</i>\n    <b>label10</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label11</b>: <i>valuevaluevalu
evaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label12</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label13</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n  
  <b>label2</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label3</b>: <i>valuevaluevaluevaluevaluevaluevaluevaluevaluevalue</i>\n    <b>label4</b>: <i>valuevaluevaluevaluevaluev
aluevaluevaluevaluevalue</i>\n    <b>label5</b>: <i>valuevaluevaluevaluevaluevaluevaluevalu..."

May 16 11:21:59 focal-1 alertmanager[30906]: ts=2022-05-16T08:21:59.526Z caller=notify.go:732 level=warn component=dispatcher receiver=alerts-test1 integration=telegram[0] msg="Notify attempt failed, wi
ll retry later" attempts=1 err="telegram: Bad Request: can't parse entities: Can't find end tag corresponding to start tag i (400)"

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    To triage

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions