• mha邮件提醒的send_report脚本


    send_report脚本中需要修改的也没几处, 如下, 都已经标注出来了

    [root@rd-mysql-test4 mha]# cat /usr/local/bin/send_report 
    #!/usr/bin/perl
     
    #  Copyright (C) 2011 DeNA Co.,Ltd.
    #
    #  This program is free software; you can redistribute it and/or modify
    #  it under the terms of the GNU General Public License as published by
    #  the Free Software Foundation; either version 2 of the License, or
    #  (at your option) any later version.
    #
    #  This program is distributed in the hope that it will be useful,
    #  but WITHOUT ANY WARRANTY; without even the implied warranty of
    #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    #  GNU General Public License for more details.
    #
    #  You should have received a copy of the GNU General Public License
    #   along with this program; if not, write to the Free Software
    #  Foundation, Inc.,
    #  51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
     
    ## Note: This is a sample script and is not complete. Modify the script based on your environment.
     
    use strict;
    use warnings FATAL => 'all';
    use Mail::Sender;
    use Getopt::Long;
     
    #new_master_host and new_slave_hosts are set only when recovering master succeeded
    my ( $dead_master_host, $new_master_host, $new_slave_hosts, $subject, $body );
     
    my $smtp='smtp.163.com';  # 这里的smtp可以查看要使用的邮箱的smtp值, 或者百度
    my $mail_from='from@163.com';  # 填写邮箱
    my $mail_user='from@163.com';  # 填写邮箱
    my $mail_pass='password';  # 注意这里的密码是邮箱开启smtp服务时设定的密码, 不是邮箱的登陆密码
    #my $mail_to=['to1@qq.com','to2@qq.com'];
    my $mail_to='to@qq.com';  # 接受邮件的邮箱
     
    GetOptions(
      'orig_master_host=s' => $dead_master_host,
      'new_master_host=s'  => $new_master_host,
      'new_slave_hosts=s'  => $new_slave_hosts,
      'subject=s'          => $subject,
      'body=s'             => $body,
    );
     
    # Do whatever you want here
    mailToContacts($smtp,$mail_from,$mail_user,$mail_pass,$mail_to,$subject,$body);
     
    sub mailToContacts {
        my ($smtp, $mail_from, $mail_user, $mail_pass, $mail_to, $subject, $msg ) = @_;
        open my $DEBUG, ">/var/log/masterha/app1/mail.log"  # 这里的路径需要修改,改成一个真是存在的路径即可
            or die "Can't open the debug    file:$!
    ";
        my $sender = new Mail::Sender {
            ctype        => 'text/plain;charset=utf-8',
            encoding    => 'utf-8',
            smtp        => $smtp,
            from        => $mail_from,
            auth        => 'LOGIN',
            TLS_allowed    => '0',
            authid        => $mail_user,
            authpwd        => $mail_pass,
            to        => $mail_to,
            subject        => $subject,
            debug        => $DEBUG
        };
        $sender->MailMsg(
            {
                msg => $msg,
                debug => $DEBUG
            }
        ) or print $Mail::Sender::Error;
        return 1;
    }
     
    exit 0;
  • 相关阅读:
    Day 09 文件处理
    Day 08 字符编码
    day 07 猜年龄
    Day 07 元组/字典/集合/python深浅拷贝
    Day 06 猜年龄/三级菜单
    并发编程-Atomic的compareAndSet
    并发编程-多线程共享变量不安全
    Spring boot Junit单元测试回滚
    Java 不区分大小写比较字符串
    IDEA 设置html 和js热发布
  • 原文地址:https://www.cnblogs.com/quzq/p/12969754.html
Copyright © 2020-2023  润新知