使用ActiveMQ监控服务器发送提醒

监控任务规划

  1. 创建定时任务以每隔几分钟检查服务器资源状况,包括磁盘、内存使用率,应用程序状态等,并通过jiankong.pl脚本将检查日志发送至消息队列MQ。

  2. 另一个定时任务同样每隔几分钟通过start.pl脚本来检查特定程序进程状态,若发现未运行则自动启动相应程序。

  3. 每天早上8点运行ok.pl脚本进行全面巡检,确保服务器正常运行并发送邮件提醒。

安装环境准备

1. 安装ActiveMQ

如果尚未安装ActiveMQ,按照先前指南将其安装在/usr/soft/activemq路径下。

2.下载监控程序

从Gitee仓库或CSDN资源下载并解压监控程序到/usr/soft/activemqmonitoring目录下。

CSDN

Gitee

文件目录:

image.png

chmod -R 755 /usr/soft/activemqmonitoring/Class-Accessor-0.34
chmod -R 755 /usr/soft/activemqmonitoring/Net-Stomp-0.42
chmod -R 755 /usr/soft/activemqmonitoring/Net-STOMP-Client-1.2

image.png

3. 修改MQ地址

monitorApp/classes/applicationContext.xml,更新其中的MQ服务器地址为实际服务器地址。

image.png

4. 修改conf.properties

修改monitorApp/classes/conf.properties文件中的相关配置项。

image.png

5. run.sh文件

修改monitorApp/run.sh文件,指定服务器上的JDK路径。

image.png

6.修改jiankong.plstart.plok.pl脚本

修改pl文件夹下的jiankong.plstart.plok.pl脚本,根据实际情况调整其内容。

jiankong.pl

image.png

image.png

start.pl

image.png

image.png

若在执行start.pl时报错,可能需要编辑ActiveMQ的bin/env配置文件以添加缺失的环境变量,编辑  env 配置文件后面增加:

image.png

ok.pl

image.png

7. 编译安装

分别进入Class-Accessor-0.34Net-Stomp-0.42Net-STOMP-Client-1.2目录下执行编译安装操作:

cd /usr/soft/activemqmonitoring/<package_name>
perl ./Makefile.PL

如遇错误提示缺少依赖,先执行:

yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

image.png

再:

make

image.png

make install

image.png

剩下的两个类似操作。

8. 启动ActiveMQ和Java应用程序。

./usr/soft/activemqmonitoring/monitorApp/run.sh

(记得给run.sh 授权  chmod -R 777 run.sh)

chmod -R 777 run.sh

monitorApp 在最前面有gitee的源码下载链接 需要扩展监控维度的可以去修改

查看java应用启动日志:

tail -f /usr/soft/activemqmonitoring/monitorApp/run.log

9. 测试配置好的Perl脚本

测试配置好的Perl脚本,并解决可能出现的问题,比如阿里云ECS环境中SMTP端口限制导致的邮件发送失败,需要修改代码以使用465端口并通过安全协议发送邮件。

接下来测试刚才配置的三个 perl脚本:

cd /usr/soft/activemqmonitoring/pl
perl ok.pl

(此处需要友情提醒一下,如果您发送邮件的程序monitorApp 放在了阿里云的ecs上, run.log 可能会报错:)

image.png

阿里云给出如下解释:ECS基于安全考虑,目前已禁用25端口。
所以我们不能使用默认的25端口,但是可以使用:465 安全协议端口进行。此时就需要修改源码.

image.png

修改后运行 EmailListener 里面的main方法,会在当前项目的工作目录 bin 目录下生成对应的class文件

将生成的class文件替换到 /usr/soft/activemqmonitoring/monitorApp  对应的包下,

image.png

然后将  com.hyaroma.blog.jiankong 对应的进程结束 
ps aux|grep com.hyaroma.blog
kill -9 pid

重新运行 run.sh 然后执行  perl ok.pl 等待接收邮件提醒。

image.png

10. 配置Linux定时任务

配置Linux定时任务(crontab)以定时执行上述脚本。bash vi /etc/crontab

```bash
# 添加到/etc/crontab
*/3 * * * * root /usr/bin/perl /usr/soft/activemqmonitoring/pl/jiankong.pl
*/3 * * * * root /usr/bin/perl /usr/soft/activemqmonitoring/pl/start.pl
0 8 * * * root /usr/bin/perl /usr/soft/activemqmonitoring/pl/ok.pl
```

含义:
每一分钟执行jiankong.pl脚本
每五分钟执行#start.pl脚本
每天8点定时查看服务器状态并发送邮件

image.png

11、启用定时任务

service crond restart

原文链接 https://www.hanyuanhun.cn | https://node.hanyuanhun.cn

  • 19
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值