【发布时间】:2017-03-17 18:46:03
【问题描述】:
我有一些由 Quality Center (HP Alm) 和 Jenkins 之间的桥梁生成的日志:像这样:
Building in workspace D:\Tools\Jenkins\workspace\*******-JenkinsWithQC
[Dani-JenkinsWithQC] $ D:\Tools\Jenkins\workspace\*******-JenkinsWithQC\HpToolsLauncher.exe -paramfile props20022014150821066.txt
"Started..."
Timeout is set to: 5
Run mode is set to: RUN_REMOTE
============================================================================
Starting test set execution
Test set name: JenkinsIntegartionTest, Test set id: 2457
"Number of tests in set: "2
Test 1: [1]Login will run on host: si0vm839
Test 2: [1]Logout will run on host: si0vm839
"Scheduler started at:20.02.2014 15:08:28
-------------------------------------------------------------------------------------------------------
20.02.2014 15:08:29 Running: [1]Login
20.02.2014 15:08:29 Running test: [1]Login, Test id: 938, Test instance id: 1412
Test: [1]Login, Id: 1412, Execution status: Running
Test: [1]Login, Id: 1412, Execution status: Error, Message: Access is denied
20.02.2014 15:08:33 Test complete: [1]Login
-------------------------------------------------------------------------------------------------------
20.02.2014 15:08:33 Running: [1]Logout
20.02.2014 15:08:33 Running test: [1]Logout, Test id: 939, Test instance id: 1413
Test: [1]Logout, Id: 1413, Execution status: Running
Test: [1]Logout, Id: 1413, Execution status: Error, Message: Access is denied
==============\nJob timed out!\n==============
================================================
Run status: Job failed, total tests: 2, succeeded: 0, failures: 0, errors: 2
Build step 'Execute HP tests from HP ALM' changed build result to FAILURE
Finished: FAILURE
我想从这些日志中创建一个如下所示的 JSON:
{
'Build': {
'TestSet': [
{
'name' . : 'execution',
'id' : 2457,
'startedAt': '20.02.2014 15:08:28',
'nbOfTests': 2,
'tests' . : [
{
'name': "[1]Login",
'host': "si0vm839"
}
]
}
]
}
}
我可以使用 python 脚本来执行此操作,该脚本使用正则表达式逐行处理并创建 JSON,但我认为它没有优化,因为我是 Python 新手...
我想知道我是否可以使用 Logstash 将它们存储在 Elasticsearch 中并构建看板仪表板。
提前感谢您的帮助:)
【问题讨论】:
标签: python json elasticsearch logging logstash