Python 自动化测试项目在 jenkins 上运行的日志文件

2017-05-05 13:39:28 +08:00
 jiangbingo

···logger.py def log_settings(logging_path=None): import logging.config import logging.handlers if logging_path is None: logging_path = os.getenv('WORKSPACE', os.curdir)

···

Python 自动化测试项目在本地环境运行会产生 Log 文件,但在 CI jenkins 上收集不到该 log 文件。 ··· 11:05:10 Output: /var/fpwork/jenkins_wk/workspace/IMP_GIT_ET_Regression/IMP/test/ET/log/output.xml 11:05:16 Log: /var/fpwork/jenkins_wk/workspace/IMP_GIT_ET_Regression/IMP/test/ET/log/log.html 11:05:16 Report: /var/fpwork/jenkins_wk/workspace/IMP_GIT_ET_Regression/IMP/test/ET/log/report.html 11:05:16 iptables: Saving firewall rules to /etc/sysconfig/iptables: [ OK ] 11:05:20 Archiving artifacts 11:05:27 Robot results publisher started... 11:05:27 -Parsing output xml: 11:05:27 Done! 11:05:27 -Copying log files to build dir: 11:05:36 Done ···

3839 次点击
所在节点    Python
4 条回复
jiangbingo
2017-05-05 15:28:31 +08:00
```
def log_settings(logging_path=None):
import logging.config
import logging.handlers
if logging_path is None:
logging_path = os.getenv('WORKSPACE', os.curdir)
```

Python 自动化测试项目在本地环境运行会产生 Log 文件,但在 CI jenkins 上收集不到该 log 文件。

```
11:05:10 Output: /var/fpwork/jenkins_wk/workspace/IMP_GIT_ET_Regression/IMP/test/ET/log/output.xml
11:05:16 Log: /var/fpwork/jenkins_wk/workspace/IMP_GIT_ET_Regression/IMP/test/ET/log/log.html
11:05:16 Report: /var/fpwork/jenkins_wk/workspace/IMP_GIT_ET_Regression/IMP/test/ET/log/report.html
11:05:16 iptables: Saving firewall rules to /etc/sysconfig/iptables: [ OK ]
11:05:20 Archiving artifacts
11:05:27 Robot results publisher started...
11:05:27 -Parsing output xml:
11:05:27 Done!
11:05:27 -Copying log files to build dir:
11:05:36 Done
```
zhaoace
2017-05-05 15:29:09 +08:00
老夫来提供些许帮助。。。

TIP1: 提问的时候提供一些有效的 information 可以显得问题更可爱一点。参考一下 https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way


TIP2: 既然跑成了,先看看有没有日志生成,然后再看看收集这一步有什么问题。

所以:
1. 先查查 Jenkins 这个 job 是在什么机器上 run 的,是 master 还是 slave 上 run 的。
2. Remote 到 该机器, 看看这个 log 文件存在不存在。
3. 如果不存在,分析为什么 remote 就无法产生 log 文件。
一般是权限不对,偶尔也有产生了 log 文件又被冲掉(不同 build 同 workspace ; job 最后存在 clean 操作)的情况。
4. 如果存在但是收集不到,检查你收集的设置是不是格式正确,有没有使用多 | 使用错 匹配符,相对路径层级对不对。
5. 最重要的一点,我压箱底的检查宝典了:请确保拼写正确。。。
chipmuck
2017-05-06 00:01:35 +08:00
@zhaoace 第 5 点是最重要的。
jiangbingo
2017-05-08 22:40:43 +08:00
@zhaoace 感谢~~~

发现是 log 生成路径不在期望的地方。。。 于是更改了 jenkins 收集 log 的配置。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/359324

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX