You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure DevOps Pipeline提取LoadRunner Enterprise RunID的日志引用方法

Azure DevOps Pipeline定位LRE任务日志并提取RunID方法

一、定位目标日志的3种方式

  • 本地Agent落盘路径:官方LoadRunner Enterprise(LRE)扩展任务执行时,所有控制台输出(包含你截图中标注的RunID字段)会自动写入当前运行Agent的临时目录,路径规则为$(Agent.TempDirectory)\<LRE任务实例标识>\loadrunner_task.log,和你在Pipeline控制台看到的输出内容完全一致。
  • 控制台日志下载:在Pipeline运行详情页,点进触发LRE测试的对应任务,点击任务日志面板的「下载日志」按钮,拿到的全量日志文件就是你要解析的原始文件,可以先下载到本地调试你的解析规则。
  • 官方预定义输出变量(优先推荐):LRE官方扩展任务默认会自动把RunID解析为内置输出变量LRE.RunId,你只需要在LRE任务的「输出变量」配置里给该变量设置一个引用名,后续任务直接调用即可,完全不需要手动解析日志,稳定性远高于自定义正则解析。

二、PowerShell脚本引用日志提取RunID实现

如果确实需要自定义解析日志,按以下逻辑写脚本即可,注意PowerShell任务需要和LRE触发任务放在同一个Agent Job中,否则跨Job无法读取对应Agent上的本地日志文件:

# 1. 匹配LRE任务的日志文件路径
$lreLogSearchPath = Join-Path $env:AGENT_TEMPDIRECTORY -ChildPath "*\loadrunner_task.log"
$lreLogFullPath = (Resolve-Path $lreLogSearchPath -ErrorAction Stop).Path

# 2. 读取全量日志内容
$rawLogContent = Get-Content -Path $lreLogFullPath -Raw

# 3. 调用你已编写完成的RunID解析逻辑,以下为适配你截图格式的示例解析规则
$runIdMatchResult = [regex]::Match($rawLogContent, 'Run ID:\s*(\d+)')
if (-not $runIdMatchResult.Success) {
    Write-Error "解析失败:未在LRE日志中匹配到RunID字段"
    exit 1
}
$extractedRunId = $runIdMatchResult.Groups[1].Value

# 4. 将解析到的RunID设置为Pipeline输出变量,供后续流程调用
Write-Host "##vso[task.setvariable variable=ParsedLRERunId;isOutput=true]$extractedRunId"

注意:如果后续LRE扩展任务升级修改了日志打印格式,自定义正则解析可能失效,无特殊需求优先使用官方自带的LRE.RunId输出变量。

内容的提问来源于stack exchange,提问作者J302086

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 14:09:29