数据库的健康监控是个很重要的工作。重要的指标\KPI监控结果会有专门的採集、监控、告警系统来做相关事情。

而一些不是很重要的或者还在设计和调试阶段的相关指标,我仅仅是想发送到我自己邮箱,本文就针对在server上配置邮件发送监控数据的过程说明。



server版本号为RHEL 6.2:

[pg@gtlions ~]# cat /etc/issue

Red Hat Enterprise Linux Server release 6.2 (Santiago)

Kernel \r on an \m



停用相关server:

[root@gtlions etc]# service sendmail stop

[root@gtlions etc]# service postfix stop                             

[root@gtlions etc]# service sendmail status

sendmail 已停

sm-client 已停

[root@gtlions etc]# service postfix status

master 已停



接下来的步骤比較重要。默认情况下server使用的SMTP并没办法发送邮件到企业组织内部邮箱,对此须要配置企业组织的邮箱信息:

[root@gtlions etc]# tail /etc/mail.rc

# For Linux and BSD, this should be set.

set bsdcompat

 

 

 

set from=[发送人邮箱地址]

set smtp=[smtpserver地址]

set smtp-auth-user=[邮箱username]

set smtp-auth-password=[邮箱密码]

set smtp-auth=login



手工測试发送邮件:

[root@gtlions etc]# echo hello world |mail -s "test" gtlions@lai.com

[root@gtlions etc]# python dbcheck.py >dbcheck.txt;cat dbcheck.txt|mail -s dbcheck gtlions@lai.com

[root@gtlions etc]# python dbcheck.py >dbcheck.txt;mail -s dbcheck gtlions@lai.com<dhcheck.txt

[root@gtlions etc]# python dbcheck.py|mail -s dbcheck gtlions@lai.com



发送邮件shell脚本:

[pg@gtlions]$ cat /home/pg/PycharmProjects/dbcheck.sh

#!/bin/sh

. /etc/profile

. ~/.bash_profile

python /home/pg/PycharmProjects/dbcheck.py|mail -s "dbcheck `date +%F' '%T`" gtlions@lai.com



设置定时调度任务。CRON调用shell脚本:

[pg@gtlions]$ crontab -l

*/1 * * * * sh /home/pg/PycharmProjects/dbcheck.sh 1>>/home/pg/check.log 2>&1

-EOF-

Linux发送监控指标到内部邮箱的更多相关文章

  1. Linux CPU监控指标

    Linux CPU监控指标 Linux提供了非常丰富的命令可以进行CPU相关数据进行监控,例如:top.vmstat等命令.top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执 ...

  2. linux性能监控 -CPU、Memory、IO、Network等指标的讲解

    [操作系统-linux]linux性能监控 -CPU.Memory.IO.Network等指标的讲解(转) 一.CPU 1.良好状态指标 CPU利用率:User Time <= 70%,Syst ...

  3. 如何进行TIDB优化之Grafana(TiDB 3.0)关注监控指标

    前言 在对数据库进行优化前,我们先要思考一下数据库系统可能存在的瓶颈所在之外.数据库服务是运行在不同的硬件设备上的,优化即通过参数配置(不考虑应用客户端程序的情况下),而实现硬件资源的最大利用化.那么 ...

  4. Linux开源监控平台归总

    Linux开源监控平台归总 Cacti 偏向于基础监控.成图非常漂亮,需要php环境支持,并且需要mysql作为数据存储 Cacti是一个性能广泛的图表和趋势分析工具,可以用来跟踪并几乎可以绘制出任何 ...

  5. MySQL 监控指标

    为了排查问题,对数据库的监控是必不可少的,在此介绍下 MySQL 中的常用监控指标. 简介 MySQL 有多个分支版本,常见的有 MySQL.Percona.MariaDB,各个版本所对应的监控项也会 ...

  6. prometheus自定义监控指标——实战

    上一节介绍了pushgateway的作用.优劣以及部署使用,本机通过几个实例来重温一下自定义监控指标是如何使用的. 一.监控容器启动时间(shell) 使用prometheus已经两个月了,但从未找到 ...

  7. 性能测试-Linux资源监控⽅式

    Linux资源监控⽅式 1. 命令 2. 第三⽅⼯具(nmon) 3. LR(需要安装RPC相应服务包和开启服务)(略)   ⼀.命令 ⽅式 1. top (系统资源管理器) 2. vmstat (查 ...

  8. Linux中监控命令top命令使用方法详解

    收集了两篇关于介绍Linux中监控命令top命令的详细使用方法的文章.总的来说,top命令主要用来查看Linux系统的各个进程和系统资源占用情况,在监控Linux系统性能方面top显得非常有用,下面就 ...

  9. linux下监控进程需掌握的四个命令

    linux下监控进程需掌握的四个命令   在LInux系统下,最困难的工作之一就是跟踪正在系统中运行的程序,尤其是现在,图形桌面使用很多的程序,只是为了生成一个桌面环境,系统中运行了太多的进程,幸运的 ...

随机推荐

  1. YUV数据格式

    概要: 与RGB编码方法类似,YUV也是一种颜色编码方法,主要用于电视系统以及模拟视频领域,它是指将亮度参量(Y:Luminance或Luma)和色度参量(UV:Chrominance或Chroma) ...

  2. 一个奇怪的编码 big5-hkscs

    # --*-- coding:utf-8 --*-- import urllib2 import urllib postDict = { 'IsExist_Slt_Part_Id': 'False', ...

  3. 【技术贴】解决Mysql ERROR 1045 (28000): Access denied for

    今天Mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost' 肯定是密码不对了.那么重置一下密码吧. 打开 cmd 输入以 ...

  4. 高级PHP应用程序漏洞审核技术

    前言 PHP是一种被广泛使用的脚本语言,尤其适合于web开发.具有跨平台,容易学习,功能强大等特点,据统计全世界有超过34%的网站有php的应 用,包括Yahoo.sina.163.sohu等大型门户 ...

  5. go与json

    Go语言对JSON进行编码和解码 http://outofmemory.cn/code-snippet/3766/Go-language-to-JSON-to-coding-jiema package ...

  6. QEvent整理归纳:140种类型,29个继承类,7个函数,3种事件来源

    140种事件类型: QEvent::None QEvent::AccessibilityDescription QEvent::AccessibilityHelp QEvent::Accessibil ...

  7. git使用的常见命令(一)

    .查看当前有哪些branch git branch 其中有*选中的分支是你的当前使用的分支 .新建一个分支 git branch dev_xiaoming .切换到一个分支 git checkout ...

  8. Linux 命令备注

    linux 命令常用备注. 查看某文件大小,du -sk filename; 查看详细信息 ls -l; 查看系统分区 df -h; 查看系统信息 uname -a; 查看系统名称 hostname; ...

  9. Cursor的moveToFirst和moveToNext

    参考: http://blog.csdn.net/kerlw/article/details/6126448 总结: 查询得到的cursor是指向第一条记录之前的,因此查询得到cursor后第一次调用 ...

  10. 循环初练 for

    class Program    {        static void Main(string[] args)        {            while (true)           ...