diff --git a/pkg/services/alerting/notifiers/telegram.go b/pkg/services/alerting/notifiers/telegram.go
index f70d299bc6c..71169c15599 100644
--- a/pkg/services/alerting/notifiers/telegram.go
+++ b/pkg/services/alerting/notifiers/telegram.go
@@ -87,7 +87,7 @@ func (this *TelegramNotifier) Notify(evalContext *alerting.EvalContext) error {
bodyJSON.Set("chat_id", this.ChatID)
bodyJSON.Set("parse_mode", "html")
- message := fmt.Sprintf("%s\nState: %s\nMessage: %s\n", evalContext.GetNotificationTitle(), evalContext.Rule.Name, evalContext.Rule.Message)
+ message := fmt.Sprintf("%s\nState: %s\nMessage: %s\n", evalContext.GetNotificationTitle(), evalContext.Rule.Name, evalContext.Rule.Message)
ruleUrl, err := evalContext.GetRuleUrl()
if err == nil {
@@ -96,6 +96,19 @@ func (this *TelegramNotifier) Notify(evalContext *alerting.EvalContext) error {
if evalContext.ImagePublicUrl != "" {
message = message + fmt.Sprintf("Image: %s\n", evalContext.ImagePublicUrl)
}
+
+ metrics := ""
+ fieldLimitCount := 4
+ for index, evt := range evalContext.EvalMatches {
+ metrics += fmt.Sprintf("\n%s: %s", evt.Metric, evt.Value)
+ if index > fieldLimitCount {
+ break
+ }
+ }
+ if metrics != "" {
+ message = message + fmt.Sprintf("\nMetrics:%s", metrics)
+ }
+
bodyJSON.Set("text", message)
url := fmt.Sprintf(telegeramApiUrl, this.BotToken, "sendMessage")