Go to main content

手册页部分 1:用户命令

退出打印视图

更新时间: 2022年7月27日 星期三
 
 

ctwatch(1)

名称

ctwatch - 观察合同或合同组中的事件

用法概要

/usr/bin/ctwatch [-f] [-r] [-v] contract-type... | contract-id...

描述

用户可通过 ctwatch 实用程序观察一组合同或合同类型中正在发生的事件。缺省情况下,ctwatch 会观察所有合同。

选项

支持以下选项:

–f

从事件队列之前开始报告事件。通常情况下,ctwatch 仅报告在其调用之后发生的事件。通过 –f 选项,也会报告在 ctwatch 调用后仍位于合同的事件队列中的任何事件(例如,未确认的关键事件)。

–r

可靠观察所有消息。一般情况下,系统可能随时丢弃信息性事件和已确认的关键事件,所以 ctwatch 无法保证能看到所有事件。仅当调用了 ctwatch,且在其有效集中声明 {PRIV_CONTRACT_EVENT} 特权后,才能使用此选项。

–v

请求详细事件说明。

操作数

支持下列操作数:

contract-type

有效的合同类型包括:

process

进程合同。

contract-id

有效的合同 id。

输出

下面的列表定义了 ctwatch 报告的列标题和含义:

CTID

生成事件的合同 ID。

EVID

事件 ID。

CRIT

事件是信息性事件、关键事件还是启动退出协商。值分别为 infocritneg

ACK

事件已经确认。值为 yes 或 "no"。

CTTYPE

合同类型。

SUMMARY

事件的特定于类型的摘要。

示例

示例 1 观察进程合同
example% ctwatch -r 1

CTID    EVID    CRIT ACK CTTYPE  SUMMARY
1       2       crit no  process pid 100569 was created
1       3       info no  process pid 100569 encountered hardware error
1       4       info no  process pid 100568 exited
1       5       info no  process pid 100569 exited
1       6       crit no  process contract empty

退出状态

将返回以下退出值:

0

成功完成。

1

出现错误。

2

无效参数。

文件

/system/contract/*

属性

有关下列属性的说明,请参见 attributes(7)

属性类型
属性值
可用性
system/core-os
接口稳定性
请参见下文。

用户可读的输出是 Uncommitted(未确定)。调用为 Committed(已确定)。

另请参见

ctrun(1)ctstat(1)contract(5)process(5)attributes(7)privileges(7)

附注

只能在单个合同中或在指定了类型的单个类型中确保对事件进行排序。

ctwatch 只能观察由具有与 ctwatch 相同的有效用户 ID 的进程拥有或创作的合同所生成的事件,除非在其有效集中声明了 {PRIV_CONTRACT_OBSERVER} 特权。