上一主题: 行创建对象下一主题: 进程监视器表操作参数


进程监视器表标志

进程监视器表的 pmonFlags 列是 32 位无符号整数字段,可用于指定相应行的其他行为语义。

默认情况下,进程监视器表行将执行以下操作:

您可以设置不同标志位来改变这些默认值。 代理将以十六进制(基础 16)码解释所有的标志。 下列说明列出了进程监视器表标志 (pmonFlags) 字段的组成:

标志值由三个字段组成:

以下部分解释了每个标志位。 您可以通过逻辑“OR”运算组合标志值。

以下列表描述进程监视器表标志:

0x00000001

禁止执行该条目的操作。

0x00000002

禁止发送该条目的 SNMP 陷阱。

注意:进程监视器表仅控制针对传统监视器发送陷阱。 对于状态进程监视器,状态更改陷阱可能仍然会从合计状态表发生。

0x00000004

禁止尝试重新初始化该条目。 默认情况下,如果目标进程已重新启动,代理将定期尝试通过扫描进程表对条目进行重新初始化,以确定新进程的 ID。

0x00000008

禁止在 sysedge.log 文件中记录该条目的陷阱。 设置该位对发送陷阱没有影响。 在事件频繁发生或将特定条目用作代理监控信号时,禁用事件记录会很有用。

0x00000010

每次当代理尝试重新初始化进程监控,但无法匹配进程时,将针对该条目发送连续 processStop 陷阱。 代理的默认行为是,在进程停止时发送单个 processStop 陷阱,并尝试定期重新初始化该条目。 如果启用该功能,则每次重新初始化失败时,代理都会发送一个额外的 processStop 陷阱。 代理在任何情况下都不发送 processStart 和 processStop 陷阱,除非相应条目正在监控 procAlive 进程属性。

注意:仅当代理正在监控 procAlive 属性时,该标志才有效。 当您正在监控 Windows 服务时,如果该服务未运行,则条目不会进入 notReady 状态。 如果设置该标志,则当服务未运行时,SystemEDGE 会生成 processStop 陷阱,并对条目运行任何关联的操作,即使该服务保持就绪状态也是如此。

0x00000020

禁止将默认参数传递给操作脚本或程序。 SystemEDGE 通常传递默认操作参数(表示陷阱类型、说明字段等)。 有关操作参数的详细信息,请参阅进程监视器表操作

0x00000040

禁止发送该条目的 notReady 陷阱。这包括不记录以及不执行 notReady 陷阱的操作。

0x00000100

监控进程组中的父进程。 许多应用程序和服务(例如,Web 服务器 httpd 后台进程)经设计,允许初始后台进程生成子进程来处理实际服务请求。 这些子进程常常处理若干个请求,然后退出。 在这种情况下,首选监控主父后台进程,而不是子进程。 如果启用该功能,代理会搜索并监控父后台进程,而不是它发现的与进程正则表达式匹配的第一个进程。

代理通过扫描进程监视器表,查找与进程正则表达式 (pmonRegExpr) 名称匹配的进程,来执行该搜索。 如果进程的匹配父进程也匹配,则代理会返回父进程。 该搜索算法仅适用于父子关系,无法处理派生后台进程的后台进程。 该功能不适用于监控 Windows 服务。

0x00000200

禁用针对该条目发送 processStart 陷阱(无日志和无操作)。

0x00000400

当进程监视器表达式从 True 转变为 False 时,针对该条目发送 processClear 陷阱(日志和操作)。 仅当正被监控的属性不是 procAlive 时,该功能才适用。

0x00000800

设定要监控的进程时,匹配进程名称和参数。 默认情况下,代理仅根据进程名称进行匹配。 如果启用该选项,则代理会将 pmonRegExpr 应用于进程名称和进程参数。有时在区分类似进程或同一个应用程序或二进制文件的多个调用时,这很有必要。

0xXXX01000

只有在第 X 次连续事件之后发送 processThreshold 陷阱或更改当前状态。 如果启用该功能,则会指示代理等待,直到发生第 X 次连续事件,然后再发送 processThreshold 陷阱或更改进程监视器的状态。 发生第 X 次事件后,代理将针对每个随后的连续 True 表达式计算发送 processThreshold 陷阱。 如果阈值表达式从 True 转变回 False,则该行将自行重置,代理将从零开始计算事件。 该标志也适用于操作执行。 您可以通过标志值字段指定 X 的值。 事件日志记录不受该标志位的影响。 有关示例,请参阅进程监控示例

0xXXX02000

发送最多 X 个连续 processThreshold 陷阱,然后不再发送。 如果启用该功能,则会设置当进程超过阈值时可发生的连续 processThreshold 陷阱和操作执行数目的上限。 阈值表达式从 True 转变为 False 后,该行将自行重置,代理将从零开始计算事件。 该标志也适用于操作执行。 您可以通过标志值字段指定 X 的值。 事件日志记录不受该标志位的影响。 有关示例,请参阅进程监控示例

0xXXX04000

监控要处于运行状态的 X 个进程所在的进程组(仅限 procAlive 监控)。

0x00008000

监控与相应正则表达式匹配的 Windows 服务。 如果设置该标志,则会指示 SystemEDGE 监控 Windows 服务表中匹配 Windows 服务的 procAlive 属性。

在 Solaris 10 上监控区域中的进程。 pmonProcRegExpr 属性应该采用 ZoneRegExp/ProcRegExp 格式。

0x00010000

禁用任何 processStart 处理。 如果启用该标志,则 SystemEDGE 不会调用操作、记录事件,或在 processStart 事件发生时发送陷阱(有关传统支持,另请参见 000 002 00)。

0x00020000

聚合相同对象的具有相同重要级别的监视器的状态,使其具有 AND 关系。 设置有该标志且具有相同重要级别的所有连接的监视器必须具有违反条件,才能相应地更改聚合状态。

0x###00000

若干标志位使用值 X 发送陷阱和执行操作。 值 X 被指定为高阶 12 位标志字段。 利用该字段的标志位是互斥的。

下图说明代理发送一个陷阱以指示被监控对象超过阈值,然后当值降到低于阈值时,再发送 processClear 陷阱。

下图说明代理发送四个陷阱以指示被监控对象的值高于阈值。 当值降到低于阈值时,代理将不发送 processClear 陷阱。

下图说明代理等到事件发生若干次后,才开始发送陷阱。 在被监控对象的值降到低于阈值之前,代理不发送陷阱;在被监控对象的值降到低于阈值时,代理将发送 processClear 陷阱。

下图说明代理仅按指定的次数发送陷阱。 当被监控对象的值降到低于阈值时,代理将发送 processClear 陷阱。