Ad Widget

Collapse

Email-оповещения.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Zzlo
    Junior Member
    • Aug 2015
    • 5

    #1

    Email-оповещения.

    Здравствуйте!

    Настроил емайл-оповещения с помощью скрипта, MTA - sSMTP (отсылает через частный домен, который крутится на серверах mail.ru)
    Скрипт простецкий:
    Code:
    #!/bin/bash
    to=$1
    subj=$2
    body=$3
    echo "$body" | mail -v -s "$subj" "$to"
    Тестовая отправка через скриптец отрабатывает нормально, сообщение приходит в теле письма, а не аттачем:
    Code:
    /usr/lib/zabbix/alertscripts/emailnotification.sh [email protected] "NEW test" "Nice to see u"
    Удивительно то, что инфоррмация, которую Заббикс должен вписать в поле "текс письма" (Default message):

    Code:
    Trigger status: {TRIGGER.STATUS}
    Trigger severity: {TRIGGER.SEVERITY}
    
    Item values:
    
    1. {ITEM.NAME1} ({HOST.NAME1}:{ITEM.KEY1}): {ITEM.VALUE1}
    
    Original event ID: {EVENT.ID} ;
    оказывается во вложении noname!
    Это не смотря на то, что mail якобы не умеет отсылать письма с аттачами! Приходит пустое письмо со вложением, в котором все эти триггеры лежат:

    Code:
    Trigger status: PROBLEM
    Trigger severity: High
    
    Item values:
    
    1. CPU idle time (Zabbix server:system.cpu.util[,idle]): 0 %
    
    Original event ID: 7998 ;

    На всякий случай, логи sSMTP:
    Code:
    Dec  4 17:55:28 monitor sSMTP[21663]: MAIL FROM:<[email protected]>
    Dec  4 17:55:28 monitor sSMTP[21663]: 250 OK
    Dec  4 17:55:28 monitor sSMTP[21663]: RCPT TO:<[email protected]>
    Dec  4 17:55:28 monitor sSMTP[21663]: 250 Accepted
    Dec  4 17:55:28 monitor sSMTP[21663]: DATA
    Dec  4 17:55:28 monitor sSMTP[21663]: 354 Enter message, ending with "." on a line by itself
    Dec  4 17:55:28 monitor sSMTP[21663]: Received: by monitor.company.net (sSMTP sendmail emulation); Fri,  4 Dec 2015 17:55:27 +0300
    Dec  4 17:55:28 monitor sSMTP[21663]: From: "Zabbix Monitoring System" <[email protected]>
    Dec  4 17:55:28 monitor sSMTP[21663]: Date: Fri, 04 Dec 2015 17:55:27 +0300
    Dec  4 17:55:28 monitor sSMTP[21663]: To: [email protected]
    Dec  4 17:55:28 monitor sSMTP[21663]: Subject: PROBLEM: Processor load is CRITICAL on Zabbix server
    Dec  4 17:55:28 monitor sSMTP[21663]: User-Agent: Heirloom mailx 12.4 7/29/08
    Dec  4 17:55:28 monitor sSMTP[21663]: MIME-Version: 1.0
    Dec  4 17:55:28 monitor sSMTP[21663]: Content-Type: application/octet-stream
    Dec  4 17:55:28 monitor sSMTP[21663]: Content-Transfer-Encoding: base64
    Dec  4 17:55:28 monitor sSMTP[21663]:
    Dec  4 17:55:28 monitor sSMTP[21663]: VHJpZ2dlcjogUHJvY2Vzc29yIGxvYWQgaXMgQ1JJVElDQUwgb24gWmFiYml4IHNlcnZlcg0K
    Dec  4 17:55:28 monitor sSMTP[21663]: VHJpZ2dlciBzdGF0dXM6IE9LDQpUcmlnZ2VyIHNldmVyaXR5OiBIaWdoDQpUcmlnZ2VyIFVS
    Dec  4 17:55:28 monitor sSMTP[21663]: TDogDQoNCkl0ZW0gdmFsdWVzOg0KDQoxLiBDUFUgaWRsZSB0aW1lIChaYWJiaXggc2VydmVy
    Dec  4 17:55:28 monitor sSMTP[21663]: OnN5c3RlbS5jcHUudXRpbFssaWRsZV0pOiA3NC41OSAlDQoyLiAqVU5LTk9XTiogKCpVTktO
    Dec  4 17:55:28 monitor sSMTP[21663]: T1dOKjoqVU5LTk9XTiopOiAqVU5LTk9XTioNCjMuICpVTktOT1dOKiAoKlVOS05PV04qOipV
    Dec  4 17:55:28 monitor sSMTP[21663]: TktOT1dOKik6ICpVTktOT1dOKg0KDQpPcmlnaW5hbCBldmVudCBJRDogNzk5OAo=
    Dec  4 17:55:29 monitor sSMTP[21663]: .
    Dec  4 17:55:29 monitor sSMTP[21663]: 250 OK id=1a4rlj-0008Lt-B8
    Dec  4 17:55:29 monitor sSMTP[21663]: QUIT
    Dec  4 17:55:29 monitor sSMTP[21663]: 221 smtp29.i.mail.ru closing connection
    Dec  4 17:55:29 monitor sSMTP[21663]: Sent mail for [email protected] (221 smtp29.i.mail.ru closing connection) uid=498 username=zabbix outbytes=1012
    Внимание, вопрос:
    как заставить заббикс/mail/sSMTP(Postfix тоже со вложением шлет) отправлять информацию в теле письма, а не во вложении?
  • Kos
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Aug 2015
    • 3404

    #2
    Originally posted by Zzlo
    как заставить заббикс/mail/sSMTP(Postfix тоже со вложением шлет) отправлять информацию в теле письма, а не во вложении?
    Значит, что-то в передаваемых данных заставляет его думать, что это не текст. Скорее всего, что-то с кодировками, либо символ CR вместе с NL в концах строк. Можно попробовать поиграться в этом направлении, например:
    Code:
    #!/bin/bash
    to=$1
    subj=$2
    body=$3
    export MAILRC=/dev/null
    echo "$body" | tr -d '\015' | mailx -n -S ttycharset=utf-8 -S sendcharser=utf-8 \
     -S encoding=8bit -s "$subj" "$to"
    вместо "encoding=8bit" ещё можно попробовать "encoding=quoted-printable".

    Comment

    • Zzlo
      Junior Member
      • Aug 2015
      • 5

      #3
      Спасибо, помогло уже с "encoding=8bit".

      Смутило то, что mail не должен отправлять с аттачами письма, если не постараться... А тут наоборот, надо стараться, чтоб аттач не прилетел в пустом письме

      Comment

      Working...