GitLab CI Runner日志字段解析请求:各参数含义说明
GitLab CI 日志参数解析
核心逻辑说明
你使用的是docker+machine执行器,这类执行器会动态创建虚拟机(或容器实例)承载CI作业,日志里的"via"前后分别对应作业执行的任务/容器标识和底层承载的虚拟机实例标识,并非重复创建实例——同一底层实例可运行多个并发作业。
各参数含义拆解
4d1ca121:GitLab Runner的版本哈希值,对应日志开头的gitlab-runner 15.8.2,用来唯一标记该Runner的具体构建版本,便于排查版本相关问题。foo-common-shared-runner M7r-HDke:foo-common-shared-runner是你配置的共享Runner名称,用于识别这是面向所有用户的共享执行节点;M7r-HDke是该Runner的短注册令牌,GitLab用它区分不同的Runner实例。
system ID: s_5f7784e6ad87:GitLab内部为Runner分配的系统级唯一ID,用于平台内部标识该Runner,与用户配置的名称、令牌一一对应。runner-m7r-hdke-project-3141-concurrent-0:
这是作业执行的任务/容器标识,拆解为:runner-m7r-hdke:关联前面的Runner短令牌M7r-HDke;project-3141:作业所属项目的ID(3141);concurrent-0:该Runner上当前并发运行的作业序号(从0开始计数),表示这是该Runner上同时运行的第1个作业。
runner-m7r-hdke-foo-common-shared-1678341790-609f9047:
这是底层承载作业的虚拟机实例标识,拆解为:runner-m7r-hdke:关联Runner短令牌;foo-common-shared:关联Runner名称;1678341790:实例创建的Unix时间戳(对应具体日期时间);609f9047:实例的随机哈希后缀,确保实例名称全局唯一。
bar-default-runner gw8BqwwN:bar-default-runner是带凭证的标记Runner名称;gw8BqwwN是该标记Runner的短注册令牌。
runner-gw8bqwwn-project-3141-concurrent-0:
与共享Runner的对应标识逻辑一致,是标记Runner上运行的作业任务/容器标识,关联该Runner的短令牌gw8BqwwN、所属项目ID 3141,以及当前并发作业序号0。runner-gw8bqwwn-bar-default-1678373458-c5bbd8d4:
标记Runner对应的底层虚拟机实例标识,关联Runner短令牌、名称,后面的时间戳和哈希后缀是该实例的创建时间与唯一标识。
实例创建疑问解答
只有当"via"后的实例名称不同时,才是新创建的底层实例;如果同一Runner下的多个作业"via"的是同一个实例名称,说明它们共享同一个底层节点,不存在实例超额创建的问题。
内容的提问来源于stack exchange,提问作者theherk
相关产品推荐
相关产品推荐

