调试monit

我发现调试monit是一个主要的痛苦。 Monit的shell环境基本上没有什么(没有路径或其他环境变量)。此外,没有日志文件,我可以找到。

问题是,如果在monit脚本中的start或stop命令失败,很难辨别它是什么问题。通常,它不像在shell上运行命令那么简单,因为shell环境不同于monit shell环境。

什么是人们使用调试monit配置的一些技术?

例如,我很高兴有一个monit shell,测试我的脚本,或一个日志文件来看看是什么问题。

我有同样的问题。使用monit的详细命令行选项有点帮助,但我发现最好的方法是创建一个尽可能类似于monit环境的环境,并从那里运行start / stop程序。
# monit runs as superuser
$ sudo su

# the -i option ignores the inherited environment
# this PATH is what monit supplies by default
$ env -i PATH=/bin:/usr/bin:/sbin:/usr/sbin /bin/sh

# try running start/stop program here
$

我发现最常见的问题是环境变量相关(特别是PATH)或与权限相关。你应该记住,monit通常作为root运行。

此外,如果您在您的monit配置中使用uid myusername,那么在执行测试之前应该更改为用户myusername。

我希望有所帮助。

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...