zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    LeetCode 769. Max Chunks To Make Sorted
    LeetCode 845. Longest Mountain in Array
    LeetCode 1059. All Paths from Source Lead to Destination
    1129. Shortest Path with Alternating Colors
    LeetCode 785. Is Graph Bipartite?
    LeetCode 802. Find Eventual Safe States
    LeetCode 1043. Partition Array for Maximum Sum
    LeetCode 841. Keys and Rooms
    LeetCode 1061. Lexicographically Smallest Equivalent String
    LeetCode 1102. Path With Maximum Minimum Value
  • 原文地址:https://www.cnblogs.com/milude0161/p/4205414.html
Copyright © 2011-2022 走看看