zabbix监控websphere的几个监控项
首先,我要吐槽一下这个AIX系统,这该死的天杀的玩个锤子象拔蚌的系统,没有自动补齐,删除文本字符也跟linux不一样,这让用惯的linux的我各种蓝瘦。
这个问题是在项目中遇到的,由于没有接触过AIX和Websphere,差点哭了,请大佬帮忙测试的,此处不详细解释只写取值过程
目标:获取websphere的JDBC连接池使用率,连接数,等待的线程数
1.AIX里面好像是jpython,直接放脚本
里面的C254好像是websphere的名字,我也不太懂,按着照猫画虎改一下,下面出现的都照样改一下
perfStr=AdminControl.queryNames( 'type=Perf,process=C251,*') perfObj=AdminControl.makeObjectName( perfStr) srvrStr=AdminControl.queryNames( 'type=Server,name=C251,*') srvrObj=AdminControl.makeObjectName( srvrStr) stats=AdminControl.invoke_jmx( perfObj, 'getStatsObject', [ srvrObj,java.lang.Boolean('true')], ['javax.management.ObjectName', 'java.lang.Boolean']) print stats.getStats('connectionPoolModule').getStats('DB2').getStats('jdbc/dsejianlong').getStatistic('PercentUsed') print stats.getStats('connectionPoolModule').getStats('DB2').getStats('jdbc/dsejianlong').getStatistic('WaitingThreadCount') print stats.getStats('connectionPoolModule').getStats('DB2').getStats('jdbc/dsejianlong').getStatistic('CreateCount') print AdminControl.invoke(AdminControl.queryNames("*:name=dsejianlong,process=C251,*"), "showPoolContents")
2.放shell脚本,获取3个监控项的数据
#!/bin/ksh /WAS9/WebSphere/AppServer/bin/wsadmin.sh -lang jython -f /etc/zabbix/zabbix_agentd/WAS_C254.py > /etc/zabbix/zabbix_agentd/log/WAS_C254_tmp.log cp /etc/zabbix/zabbix_agentd/log/WAS_C254_tmp.log /etc/zabbix/zabbix_agentd/log/WAS_C254.log grep PercentUsed /etc/zabbix/zabbix_agentd/log/WAS_C254.log |awk -F'current=' '{print $2}' |awk -F',' '{print $1}' >/etc/zabbix/zabbix_agentd/log/C254_java_pool_PercentUsed.log grep "Total number of connection" /etc/zabbix/zabbix_agentd/log/WAS_C254.log |awk -F'max/min' '{print $1}' |awk -F'connections:' '{print $2}' |awk -F'(' '{print $1}' | sed 's/ //g' > /etc/zabbix/zabbix_agentd/log/C254_java_pool_connectionnumber.log #add for WaitingThreadCount grep WaitingThreadCount /etc/zabbix/zabbix_agentd/log/WAS_C254.log |awk -F'current=' '{print $2}' |awk -F',' '{print $1}' > /etc/zabbix/zabbix_agentd/log/C254_java_pool_WaitingThreadCoun t.log
3.新建一个log目录,记得在脚本中做好指向
4.在zabbix配置文件末尾添加
# JDBC Pool C254 UserParameter=C254_CJavaPool_PercentUsed.check,cat /etc/zabbix/zabbix_agentd/log/C254_java_pool_PercentUsed.log UserParameter=C254_JavaPool_Connectionnumber.check,cat /etc/zabbix/zabbix_agentd/log/C254_java_pool_connectionnumber.log UserParameter=C254_JavaPool_WaitingThreadCount.check,cat /etc/zabbix/zabbix_agentd/log/C254_java_pool_WaitingThreadCount.log
5.添加定时任务,定时执行
#JDBC C254 0,5,10,15,20,25,30,35,40,45,50,55 * * * * /etc/zabbix/zabbix_agentd/WAS_C254_check.sh
6.web zabbix添加过程省略
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 数据库服务器 SQL Server 版本升级公告
· 程序员常用高效实用工具推荐,办公效率提升利器!
· C#/.NET/.NET Core技术前沿周刊 | 第 23 期(2025年1.20-1.26)