如何检查OpenShift构建日志?

10
我有一个应用程序,通过将源代码推送到git存储库来部署到OpenShift。
我需要解决一个问题,在maven构建期间仅在OpenShift上执行时发生(本地调试不可行)。
但是,我无法找出检查maven构建日志的方法。

+1 for good an answer. - Agie
你是不是想说“拉取”而不是“推送”?假设这是一个S2I构建,你正在从git上拉取代码。 - Grant Foster
2个回答

3
您可以使用'rhc tail'命令,或者ssh进入您的gear并查看~/app-root/logs目录,特别是您的java服务器日志。如果您正在使用jenkins构建应用程序,则需要登录到jenkins服务器并查看控制台构建日志以查看发生了什么。

2
到目前为止,谢谢你的帮助。但是能否查看Maven构建日志呢?我的情况与作者非常相似,即服务器上的构建没有编译类,而如果我在本地文件夹上进行构建,则会编译成功。 - Arturas M

0

我找到了两种检查日志的方法。

  1. 使用RabbitVCS Git(在Ubuntu上)。
    我认为,这种方法对其他Git客户端也应该有效。当我推送更改时,RabbitVCS Git会将构建日志打印到推送日志中。

  2. 指示maven将其日志打印到文件中。
    可以通过pre_build操作钩子来完成此操作,只需添加以下行:

    export MAVEN_ARGS="clean package -Popenshift > PATH/TO/FILE.log"

    一旦构建完成,可以通过SSH在gear上访问该文件。


1
关于Maven(或Gradle)日志,我认为最好将其放在$OPENSHIFT_LOG_DIR中,这样您就可以运行命令“rhc tail -a <your app>”并实时检查所有与应用程序相关的日志。 - Alexian
我尝试导出MAVEN_ARGS="clean package -Popenshift > $OPENSHIFT_LOG_DIR/build.log",但是我得到了未知的生命周期阶段">"。 - Zveratko

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接