Solaris svcs命令显示错误状态

Solaris svcs命令显示错误状态,solaris,hyperic,Solaris,Hyperic,我刚在solaris 5.10上安装了一个应用程序。当通过ps-ef | grep hyperic | grep agent进行检查时,进程启动并运行。当通过svcs hyperic agent命令检查状态时,输出显示代理处于维护模式。应用程序运行良好,我对应用程序没有任何问题。请帮助导致这种行为的原因有几个: Starter(start/exec服务属性)返回的状态不同于SMF\u EXIT\u OK(零)。然后您可以检查日志: # svcs -x ssh ... See: /var/

我刚在solaris 5.10上安装了一个应用程序。当通过
ps-ef | grep hyperic | grep agent
进行检查时,进程启动并运行。当通过
svcs hyperic agent
命令检查状态时,输出显示代理处于维护模式。应用程序运行良好,我对应用程序没有任何问题。请帮助

导致这种行为的原因有几个:

  • Starter(
    start/exec
    服务属性)返回的状态不同于
    SMF\u EXIT\u OK
    (零)。然后您可以检查日志:

     # svcs -x ssh
     ...
     See: /var/svc/log/network-ssh:default.log
    
    如果检查日志,您可能会看到以下消息,这意味着启动程序脚本失败或写入错误:

     [ Aug 11 18:40:30 Method "start" exited with status 96 ]
    
  • 这种行为的另一个原因是服务在其工作期间(即其中一个进程转储或接收终止信号或所有进程退出)出现故障,如下所述:


    为监控提供SMF设施的实际系统是系统合同。您可以使用
    svcs-v
    (字段CTID)确定在线服务的合同ID:

    而不是使用
    ctwatch
    观看事件:

    # ctwatch 68
    CTID    EVID    CRIT ACK CTTYPE   SUMMARY
    68      28      crit no  process  contract empty
    
    除此之外,还有两种方法可以解决这一问题:

    • 服务确实存在问题,因此最终会出现故障。然后调试应用程序

    • 这是服务的正常行为,所以您应该编辑并重新导入您的服务清单,以减少SMF的偏执。即,配置
      忽略错误
      持续时间
      属性


可能您的启动器没有以零(
SMF\u退出\u OK
)状态退出?请检查服务日志(其位置可从
svcs-xhyperic agent
component获得)。非常感谢您的回复!!!!!!!请查找日志片段。。Oracle Corporation SunOS 5.10通用修补程序2005年1月-n正在启动HQ代理-n-n-N正在运行(3314)。Oracle Corporation SunOS 5.10通用修补程序2005年1月3671[4月14日10:18:01方法“开始”退出,状态为0]。。Start方法以零退出。SMF监控应用程序的方式有很多:分叉和退出进程,传递信号,可能注意到一个坏事件,SMF将其标记为维护。这些事件应该在应用程序清单中屏蔽。提供SMF此类设施的实际系统是系统合同。您可以尝试
清除
您的应用程序状态,小心地重新启动它,并发出
svcs-v hyperic agent
获取您服务的CTID(合同id),然后运行
ctwatch CTID
跟踪事件(如果服务尚未标记为维护),我非常感谢您的响应。在一次清晰而仔细的重启之后,万岁!!我拿到了CTID。。请找到订单。。但一段时间后,状态再次进入维护状态。。root@rhmwsoss:/opt/hyperic agent/agent-4.6.6.1-EE/bundles/agent-4.6.6.1/bin#ctwatch 37211 CTID EVID CRIT ACK CTTYPE SUMMARY 37211 28052 CRIT no process contract清空大量信息!!!它真的帮助了我。。在我的例子中,start方法以零退出,但我在日志中看到一些错误语句,我正在尝试修复它。无论如何,再次感谢!!!!!
# ctwatch 68
CTID    EVID    CRIT ACK CTTYPE   SUMMARY
68      28      crit no  process  contract empty