perl – Munin mysql插件结果不一致,用IPC :: Sharelite store()
我最近在CentOS服务器上设置了一个munin节点.一切正常,直到我尝试添加apache插件(工作正常).
由于一些奇怪的原因,以前工作的munin的mysql插件停止工作……每当我使用munin-run运行插件时,我现在得到一个奇怪的错误.例如
回报我
但有时它也会回来
但过了一会儿它会恢复到之前的错误. 我对IPC或ShareLite库没有任何了解,所以我真的不知道是不是要开始寻找.由于它是一个与共享内存相关的模块,我尝试使用ipcs跟踪共享内存段,但没有取得多大成功. 我还没有重新启动机器,因为它用于许多项目(我显然希望能够诊断问题而不需要重新启动,如果可能的话). 有人遇到过这个问题吗? (快速搜索谷歌没有提供任何相关的帮助) 谢谢您的帮助! 解决方法
我已经解决了我的问题,但我还没有找到确切的原因/来源,所以我仍然愿意听取其他人的意见.
基本上,munin的mysql插件是用perl编写的,使用IPC :: ShareLite. 使用strace我能够确定问题是应用程序卡在特定信号量id的semop上.使用ipcs和ipcrm,我能够删除信号量并再次正确运行插件. strace给了我semid作为传递给semop的第一个参数.使用ipcrm -s semid,我从系统中删除信号量,这解决了问题. 因此,我被引导相信信号量出现了问题(争论可能,但我没有看到……). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |