核对开通信息与凭据
从控制台复制当前实例的主机地址、端口和用户名,确认没有混用旧订单信息。检查输入法、大小写、首尾空格和密码管理器自动填充结果。不要把密码、私钥或完整连接串放进截图和工单正文。
问题分流
不要一次改动多个变量。每轮只调整连接方式、客户端设置、构建参数或网络路径中的一项,并保留调整前后的结果。
远程连接排查
先确认连接目标没有写错,再检查端口和客户端。不要通过反复重置凭据掩盖网络或会话层问题。
从控制台复制当前实例的主机地址、端口和用户名,确认没有混用旧订单信息。检查输入法、大小写、首尾空格和密码管理器自动填充结果。不要把密码、私钥或完整连接串放进截图和工单正文。
在本地终端使用 nc 检查指定端口。成功建立 TCP 连接只说明端口可达,不代表图形会话已经正常;超时则应继续记录本地网络、运营商和目标节点。
nc -vz "$TARGET_HOST" "$TARGET_PORT"
确认实例处于运行状态,图形会话服务可用,并且当前账户具备远程会话权限。如果命令行可连接但画面无法建立,应把问题限定在图形服务、客户端协商或会话残留,而不是继续改网络配置。
先用单显示器、较低分辨率和较低画质建立基线,再逐项恢复缩放、色彩质量与多屏设置。若低分辨率稳定而高分辨率出现卡顿,应同时采集延迟、丢包和客户端编码设置。
正常退出客户端,等待旧连接释放后重新建立会话。避免多个客户端同时连接同一图形会话。重现中断时,记录精确到分钟的时间、客户端版本、是否切换网络,以及命令行连接是否同时受影响。
CI/CD 排查
先运行一个不读取项目密钥、不执行依赖安装的最小任务。最小任务通过后,再逐层加入仓库、缓存、签名材料与归档步骤。
核对 Runner 是否注册到正确项目或组织、标签是否匹配、执行器是否处于在线状态。若任务一直排队,先检查标签和并发限制,再看 Runner 进程,而不是直接重跑完整流水线。
ps aux | grep -i runner
launchctl list | grep -i runner
确认构建进程使用的账户、钥匙串搜索路径、证书可见性和描述文件范围一致。日志只保留证书名称、失效阶段和错误文本;提交前移除密码、私钥内容和完整签名材料。
security list-keychains
security find-identity -v -p codesigning
把依赖缓存、派生数据和最终产物放在不同目录。缓存命中异常时,先记录缓存键和目录占用,再对单个项目执行清理,避免一次删除所有工作目录而失去对照样本。
du -sh "$CACHE_PATH"
df -h
find "$CACHE_PATH" -maxdepth 1 -type d
记录排队开始、实际执行和结束时间,区分“任务未被领取”与“任务已启动但长时间无输出”。前者重点查标签、并发与 Runner 状态,后者重点查脚本等待、网络依赖和子进程。
保留失败步骤前后至少各 50 行日志,同时附命令退出码、工具版本和项目中可公开的最小复现参数。不要只提交一张错误弹窗截图,也不要上传包含令牌、仓库凭据或业务数据的完整日志包。
xcodebuild -version
sw_vers
uname -m
首次失败后先保存原始日志,再用相同提交和相同参数重试一次。若重试成功,比较网络请求、缓存命中和执行耗时;若稳定失败,则缩小到单一命令,并记录其输入、退出码和持续时间。
网络诊断工作台
单次 ping 不能代表链路质量。请在问题发生期间和恢复后各采集一组结果,并保持本地网络、目标地址与命令参数一致。
连续发送 20 个数据包,保存最小值、平均值、最大值和丢包比例。
ping -c 20 "$TARGET_HOST"
路径结果用于定位延迟从哪一跳开始变化。部分路由器不回应探测并不等于链路中断。
traceroute "$TARGET_HOST"
记录解析结果、响应时间与当前使用的 DNS 服务器,区分解析问题和目标端口问题。
dig "$TARGET_HOST"
scutil --dns
使用 macOS 自带工具采集上下行容量、响应能力与空闲延迟。测试期间暂停大文件同步和其他高带宽任务。
networkQuality -v
存储与数据处理
存储问题通常不是单一容量数字。目录边界、写入权限、可恢复副本和迁移时间都应在首次构建前确定。
添加扩展存储后,先检查系统是否识别设备、卷是否已挂载、文件系统是否可写,再调整构建目录。不要在任务运行中切换缓存或产物路径。
diskutil list
df -h
mount
服务可用率
状态记录用于判断服务端影响范围。具体测量窗口、排除事项、申请条件、服务抵扣与适用范围以服务条款为准。
节点全年 365 天正常运行。不可抗力、用户自身操作、用户侧网络和工作负载配置造成的影响不计入平台可用率。
若认为订单受到平台侧服务事件影响,请保留订单标识、节点、首次发现时间、恢复时间和连续探测记录,并通过控制台工单提交。是否符合服务抵扣条件及抵扣方式以服务条款的具体规则为准。
查看服务条款提交支持请求
技术支持请求应围绕一个问题组织。不同节点、不同订单或不同故障阶段请分开描述,避免时间线互相覆盖。
提供控制台中的订单或实例标识,不要发送账户密码。
明确写出新加坡、日本(东京)、韩国(首尔)或香港。
包含日期、时区、开始时间、持续时间以及是否已经恢复。
分别说明希望发生什么、实际看到什么,不只写“无法使用”。
列出从正常状态到故障出现的最短步骤,以及重试是否稳定复现。
附错误步骤前后的日志、命令退出码和必要截图,移除令牌、密码、私钥、支付凭据及业务数据。
保留错误码、时间、命令名称、工具版本、路径结构和退出码;替换访问令牌、密码、私钥、仓库地址中的凭据、用户真实姓名与业务数据。脱敏后应再次搜索常见密钥前缀和邮箱地址。
至少附一组连续 ping、一次 traceroute、问题发生时间、目标节点、本地城市与运营商,并说明切换有线、Wi-Fi 或移动热点后结果是否变化。
通常不需要。先提供失败命令、退出码、前后日志、工具版本和最小复现步骤。若必须提供样本,应移除业务代码、密钥、签名材料与生产数据,只保留能够重现问题的最小结构。