我在 solaris 5.10 上新安装了一个应用程序。当检查通过时ps -ef | grep hyperic | grep agent
,进程启动并运行。通过svcs hyperic-agent
命令检查状态时,输出显示代理处于维护模式。应用程序运行良好,我对应用程序没有任何问题。请帮忙
问问题
1095 次
1 回答
3
导致这种行为的原因有几个:
启动器(
start/exec
服务属性)返回的状态不同于SMF_EXIT_OK
(零)。你可以检查日志:# svcs -x ssh ... See: /var/svc/log/network-ssh:default.log
如果您检查日志,您可能会看到以下消息,这意味着启动脚本失败或写入错误:
[ Aug 11 18:40:30 Method "start" exited with status 96 ]
这种行为的另一个原因是服务在其工作期间出现故障(即一个进程核心转储或接收终止信号或所有进程退出),如下所述:https ://blogs.oracle.com/lianep/entry/smf_5_fault_retry_models
为监视提供 SMF 设施的实际系统是系统合同。您可以使用(字段 CTID)确定在线服务的合同 ID:
svcs -v
# svcs -vp svc:/network/smtp:sendmail STATE NSTATE STIME CTID FMRI online - Apr_14 68 svc:/network/smtp:sendmail Apr_14 1679 sendmail Apr_14 1681 sendmail
比观看事件
ctwatch
:# ctwatch 68 CTID EVID CRIT ACK CTTYPE SUMMARY 68 28 crit no process contract empty
有两种选择可以处理:
服务确实存在问题,因此最终会出现故障。比调试应用程序。
这是服务的正常行为,因此您应该编辑并重新导入服务清单,以使 SMF 不那么偏执。即配置
ignore_error
和duration
属性。
于 2015-04-15T14:41:22.963 回答