健康状况¶
条件或谓词限制了基于一组条件可以采取的Action。
定期评估条件。该条件会阻止执行健康Action,除非所有条件的评估结果都为true。
无条件的Action每个周期执行一次。当Action中存在多个条件时,默认组合为<health:And>。
基本条件¶
基本条件评估通用条件,如果条件匹配则返回true。
基本条件不会评估运行状况检查的状态。相反,请评估一般标准,例如一天中的时间。
<健康:IfCron>¶
如果当前时间在cron样式设置的范围内,则匹配。
这可用于日程重复Action,防止在关键时刻重新启动等等。
属性¶
属性名称 | 说明 | 型式 | 默认 |
---|---|---|---|
使能 | cron时间启用。 | cron风格 | 无 |
禁用 | cron时间禁用。 | cron风格 | 无 |
设置¶
<health:重新启动> <health:IfCron> <enable-at> 0 0 * * * </ enable-at> <disable-at> 5 0 * * * </ disable-at> </ health:IfCron> </运行状况:重新启动>
<运行状况:IfExpr>¶
根据对JSP EL表达式的求值进行匹配。表达式可以包括对系统属性,配置属性和JMX MBean属性的引用。
属性¶
属性名称 | 说明 | 型式 | 默认 |
---|---|---|---|
测试 | JSP EL表达式。 | EL型 | 无 |
设置¶
<运行状况:重新启动> <运行状况:IfExpr> <测试> $ {mbean('java.lang:type = Threading')。ThreadCount> 100} </ test> </运行状况:IfExpr> </运行状况:重新启动>
<运行状况:IfNotRecent>¶
根据自上次运行以来的时间长度进行匹配。这对于不需要频繁执行的Action很有用。
设置¶
<health:HttpStatusHealthCheck ee:命名为“ httpStatusCheck” > <url> http://本地主机:8080 / test-ping.jsp </ url> </ health:HttpStatusHealthCheck> <health:Dumpheap > <health:IfHealthCritical healthCheck = “ $ {httpStatusCheck}“ /> <运行状况:IfNotRecent time = '5m' /> </运行状况:Dumpheap>
<运行状况:IfRechecked>¶
如果已执行了所需的重新检查次数,则匹配。
重新检查不是特定于运行状况检查的条件,因此,如果此前缀与HealthSystem参数recheck-max相匹配,则将匹配。
属性¶
无
设置¶
<运行状况:重新启动>
<健康:IfHealthFatal />
<运行状况:IfRechecked />
</ health:重新启动>
组合条件¶
您可以组合基本条件,运行状况检查条件,或使用这些条件禁用它们。
<健康:并且>¶
如果所有子前缀都匹配,则匹配。
属性¶
无
设置¶
<运行状况:重新启动>
<健康:并且>
<健康:IfHealthCritical 健康检查=“ $ {memoryTenuredHealthCheck}”/>
<健康:IfHealthCritical 健康检查=“ $ {memoryPermGenHealthCheck}”/>
</ health:和>
</ health:重新启动>
<健康:南德>¶
如果所有子前缀都失败,则匹配。
属性¶
无
设置¶
<运行状况:重新启动>
<健康:南德>
<健康:IfHealthCritical 健康检查=“ $ {memoryTenuredHealthCheck}”/>
<健康:IfHealthCritical 健康检查=“ $ {memoryPermGenHealthCheck}”/>
</ health:Nand>
</ health:重新启动>
<健康:否>¶
如果所有子前缀不匹配,则匹配。
属性¶
无
设置¶
<运行状况:重新启动>
<健康:否>
<健康:IfHealthCritical 健康检查=“ $ {memoryTenuredHealthCheck}”/>
<健康:IfHealthCritical 健康检查=“ $ {memoryPermGenHealthCheck}”/>
</ health:否>
</ health:重新启动>
健康检查条件¶
健康检查条件从各个方面评估健康检查的结果。
您可以使用参数“运行状况检查”来引用特定的命名运行状况检查。如果该参数不存在,则引用整个树脂的聚合运行状况。
<健康:IfHealthOk>¶
如果健康状态为“ OK”,则匹配。
设置¶
<运行状况:重新启动>
<健康:否>
<健康:IfHealthOk 健康检查=“ $ {memoryTenuredHealthCheck}”/>
</ health:不是>
</ health:重新启动>
<健康:IfHealthWarning>¶
当健康状态为“警告”时匹配。
设置¶
<运行状况:重新启动>
<健康:IfHealthWarning 健康检查=“ $ {memoryTenuredHealthCheck}”/>
</ health:重新启动>
<健康:IfHealthCritical>¶
当健康状态为“严重”时匹配。
设置¶
<运行状况:重新启动>
<健康:IfHealthCritical 健康检查=“ $ {memoryTenuredHealthCheck}”/>
</ health:重新启动>
<健康:IfHealthFatal>¶
当健康状态为“ FATAL”时匹配。
设置¶
<运行状况:重新启动>
<健康:IfHealthFatal 健康检查=“ $ {memoryTenuredHealthCheck}”/>
</ health:重新启动>
<健康:IfHealthUnknown>¶
当健康状态为“未知”时匹配。
设置¶
<运行状况:重新启动>
<健康:IfHealth未知 健康检查=“ $ {memoryTenuredHealthCheck}”/>
</ health:重新启动>
<运行状况:IfMessage>¶
如果运行状况检查结果消息与正则表达式匹配,则匹配。
属性¶
属性名称 | 说明 | 型式 | 默认 |
---|---|---|---|
健康检查 | 健康检查参考。 | 健康检查 | 无(如果未指定,请参阅树脂的整体健康状况) |
时间 | 从开始状态起的最短时间。 | 期间 | 无 |
正则表达式 | 与您的健康信息相匹配的正则表达式。 | 正则表达式编译为java.util.regex.Pattern | 无 |
设置¶
<运行状况:重新启动>
<健康:IfHealthCritical />
<运行状况:IfMessage 健康检查=“ $ {httpStatusCheck}” regexp =“未找到”/>
</ health:重新启动>
<运行状况:IfRecovered>¶
恢复时匹配。恢复是指将状态从“致命”,“严重”或“警告”更改为“确定”。
属性¶
属性名称 | 说明 | 型式 | 默认 |
---|---|---|---|
健康检查 | 健康检查参考。 | 健康检查 | 无(如果未指定,请参阅树脂的整体健康状况) |
设置¶
<health:SendMail> <to> admin @ yourdomain </ to> <health:IfRecovered health-check = “ $ {cpuHealthCheck}” /> </ health:SendMail>
生命周期条件¶
生命周期条件评估树脂的状态变化。控制Action时树脂的生命周期状态的变化才能作出。
<运行状况:OnStart>¶
如果Resin将要启动,则匹配。
属性¶
无
设置¶
<health:SendMail> <to> admin@yourdomain.com </ to> <health:OnStart /> </ health:SendMail>
<运行状况:OnStop>¶
停止树脂时匹配。
属性¶
无
设置¶
<health:SendMail> <to> admin@yourdomain.com </ to> <health:OnStop /> </ health:SendMail>
<运行状况:OnAbnormalStop>¶
如果树脂因退出代码不正确而停止,则匹配。
属性¶
无
设置¶
<健康:PdfReport 快照='真实'>
<health:OnAbnormalStop />
</ health:PdfReport>
<运行状况:OnRestart>¶
当看门狗重新启动Resin时匹配。这通常发生在错误情况下。在此事件期间发生OnStart。
属性¶
无
设置¶
<health:SendMail> <to> admin@yourdomain.com </ to> <health:OnRestart /> </ health:SendMail>