Coordinator 控制台实用程序 (xgCoordConsole.exe)
Coordinator 控制台实用程序 (xgCoordConsole.exe) 可用于以下两个目的:
-
生成 XML 文件,其中包含 Incredibuild Environment 中 Agent 及其当前状态的相关信息。此文件有多种用途,例如实时监控、生成有关您 Incredibuild Environment 的自定义统计数据 Incredibuild environment。
-
执行 Coordinator 相关的维护任务,例如清理所有已连接 Agent 上的文件缓存。
Coordinator 维护任务
要清理所有已连接 Agent 机器上的文件缓存:
-
运行以下命令:xgCoordConsole.exe /ResetAllFileCaches
注意:此选项仅可在运行了 Coordinator 服务、或已获远端管理 授权的 Agent 机器上运行。
生成 Coordinator 状态 XML 文件
要生成具备当前信息的 XML 文件,需运行以下命令:
xgCoordConsole.exe /ExportStatus=MyFilePath.xml
其中 MyFilePath.xml 是目标 XML 文件的路径。
其他命令行选项:
-
/nologo – 阻止版权信息
-
/local– 不论 Agent Settings 对话框中指定了何种 Coordinator,均导出在本地机器上运行的 Coordinator 状态。
根元素描述
XML 文件的根“CoordinatorStatus”元素包括了如下表所述的属性:
属性 | 描述 |
---|---|
Role | 即“Backup”或“Primary”,具体取决于 Coordinator 的配置 |
Host | Coordinator 的网络名称 |
Port | Coordinator 服务的 IP 端口 |
AgentCount | 报告中的 Agent 数量。报告包括所有已订阅 Agent(含脱机和联机),以及所有当前已连接至 Coordinator 并处于待订阅状态的未订阅 Agent。 |
ExportTime | 创建 XML 文件的时间,以 64 位数值表示,对应 Windows FILETIME 结构 |
ExportTimeText | 创建 XML 文件的时间,以文本格式表示 |
Version | 已安装的 Incredibuild 版本构建编号 |
VersionText | 已安装的 Incredibuild 版本文本描述 |
PrimaryCoordinatorOnline | 描述主 Coordinator 是否可达的布尔值 |
BackupCoordinatorOnline | 描述备用 Coordinator 是否可达的布尔值 |
注意:如果 PrimaryCoordinatorOnline 和 BackupCoordinatorOnline 均为“True”,则代表主 Coordinator 处于活动状态;如果 PrimaryCoordinatorOnline="False" 和 BackupCoordinatorOnline="True",则代表备用 Coordinator 当前处于活动状态。
Agent 元素描述
XML 中包含适用于每个已含 Agent 的“Agent”元素。下表提供了对属性的描述,该内容未在 Coordinator Monitor 部分中进行说明:
属性 | 描述 |
---|---|
Online | Agent 当前是否连接到了 Coordinator |
Version | Agent 当前正在运行的 Incredibuild 版本(数字格式) |
Version Text | Agent 当前正在运行的 Incredibuild 版本(文本格式) |
Host | Agent 计算机的网络名称 |
Port | Agent 服务所使用的 IP 端口 |
BuildAssignedCPUCount | 已分配至构建(该 Agent 正在运行)的 CPU/核心总数 |
WorkingForAgents | 当前已分配至构建(该 Agent 正在运行)的 Agent 数量 |
LastConnected | 此 Agent 上次连接到 Coordinator 的时间;以 64 位数值表示,对应 Windows FILETIME 结构 |
PhysicalCores |
可以充当 Helper 的可用物理核心数量 |
LogicalCores |
可以充当 Helper 的可用逻辑核心数量 |
Return Codes
-
0 – 构建成功且没有出现错误
-
1 – 由于与 Incredibuild 无关的错误(例如编译错误),构建失败。
-
2 – 通过用户请求取消构建
-
3 – 由于 Incredibuild 系统错误构建失败