• NAGIOS 使用sendmail发送邮件关于标题乱码的解决方法


    公司的nagios报警发送邮件,标题乱码,我在解决问题的时候,发现,只有往公司的新浪企业邮箱发送邮件会产生乱码问题(标题乱码),而向我自己的邮箱(163,qq)发送都不会有乱码的问题,考虑发送邮件和接收邮件,只有发送邮件可以考虑,接收邮件考虑不了(邮箱没有编码。。。。。),所以只能更改配置或者更改邮箱(必须的用企业邮箱),所以只有一个办法了,修改配置;在网上搜了好久看到许多解决办法,其中借鉴了(http://blog.sina.com.cn/s/blog_485acedb0100z51f.html)这篇博客,但是这个方法根本行不通,更改后,nagios报警不会发送邮件,然后我又在这个基础上更改了一下代码,然后就可以了,更改代码如下:

    # 'notify-host-by-email' command definition(OLD)
    #define command{
    # command_name notify-host-by-email
    # command_line /usr/bin/printf "%b" "***** Nagios ***** 状态: $HOSTSTATE$ 主机IP: $HOSTADDRESS$ Info: $HOSTOUTPUT$ 时间: $LONGDATETIME$ " | /usr/bin/mail -s "$HOSTSTATE$:$HOSTNAME$" $CONTACTEMAIL$
    # }
    #(NEW)-WANGLI
    define command{
    command_name notify-host-by-email
    command_line /usr/bin/printf "%b" "***** Nagios ***** 状态: $HOSTSTATE$ 主机IP: $HOSTADDRESS$ Info: $HOSTOUTPUT$ 时间: $LONGDATETIME$ " | /usr/bin/mail -a "Content-Type:utf-8" -s "=?utf-8?B?`echo "$HOSTSTATE$:$HOSTNAME$" |base64`?=" $CONTACTEMAIL$
    }

    # 'notify-service-by-email' command definition(OLD)
    #define command{
    # command_name notify-service-by-email
    # command_line /usr/bin/printf "%b" "***** Nagios ***** 服务: $SERVICEDESC$ 主机IP: $HOSTADDRESS$ 状态: $SERVICESTATE$ 时间: $SHORTDATETIME$ 追加信息: $SERVICEOUTPUT$ " | /usr/bin/mail -s "** $SERVICESTATE$:$HOSTADDRESS$ $SERVICEDESC$ **" $CONTACTEMAIL$
    # }
    #(NEW)-WANGLI
    define command{
    command_name notify-service-by-email
    command_line /usr/bin/printf "%b" "***** Nagios ***** 服务: $SERVICEDESC$ 主机IP: $HOSTADDRESS$ 状态: $SERVICESTATE$ 时间: $SHORTDATETIME$ 追加信息: $SERVICEOUTPUT$ " | /usr/bin/mail -a "Content-Type:utf-8" -s "=?utf-8?B?`echo "** $SERVICESTATE$:$HOSTADDRESS$ $SERVICEDESC$ **" |base64`?=" $CONTACTEMAIL$
    }

    简单总结的说:就是要把邮箱地址放在base之外,放在里面不知道什么原因邮件发送不出去,我猜测是邮件地址不能识别的问题;研究了好几天nagios报警发邮件的问题,猜测:如果用sendEmail发送邮件不知道会不会产生这个问题,没有root用户密码,安装不了sendEmail,想法实现不了。。。。。。。。

    总结在命令行的指令为:
    mail -a "Content-Type:utf-8" -s "=?utf-8?B?`echo <主题> | base64`?=" xxx@emailhost < emailtextfile

    补充:去掉 -a "Content-Type:utf-8" 也可以,这个用处是将报警信息以附件的形式发给指定的邮箱。

    转载请注明出处!http://www.cnblogs.com/milude0161/p/4205414.html

  • 相关阅读:
    93.修改私有属性的值
    92.私有属性和私有方法
    91.多层继承
    python基础入门之四 —— 列表
    python基础入门之三 —— 字符串
    python基础入门之二 —— 条件、循环语句
    如何将本地图片变成图片链接
    python基础入门之一 —— 变量与运算符
    Elasticserach 配置文件详解
    elasticserch:性能优化策略
  • 原文地址:https://www.cnblogs.com/milude0161/p/4205414.html
Copyright © 2020-2023  润新知