Jenkins 访问日志以解决调试问题
Jenkins access logs for debugging issues
我是第一次尝试 jenkins。和哈德森一起体验一下。
我正在尝试调试从应用程序启动的远程作业。我什至不确定请求是否发送给了 jenkins master,而且我没有看到 UI 中正在排队的作业。
在哪里可以找到 jenkins 访问日志,这样我就可以查看服务器是否收到了请求?我在 mac.
上安装了 jenkins
同样在 hudson world 中,我曾经查看以下内容来调试任何问题。如果有人可以为 jenkins 指出不同的相关日志,那就太好了。
- catalina.out
- localhost-YYYY-MM-DD.log
- 访问-YYYY-MM-DD.log
- access.log
非常感谢。
非常感谢任何帮助。
我认为默认情况下不启用访问日志,但您可以将其打开。 Here's the documentations 这样做。
Steps to enable an access log
For Ubuntu:
Add these lines to /etc/default/jenkins above JENKINS_ARGS:
Enable access log
JENKINS_ACCESSLOG="--accessLoggerClassName=winstone.accesslog.SimpleAccessLogger --simpleAccessLogger.format=combined --simpleAccessLogger.file=/var/log/jenkins/access.log"
Edit /etc/default/jenkins and add $JENKINS_ACCESSLOG to JENKINS_ARGS
Enable log rotation: edit /etc/logrotate.d/jenkins and change /var/log/jenkins/jenkins.log to /var/log/jenkins/*.log
除了@TheEllis 的回答:
对于 Jenkins Windows 服务,您可能需要更新位于安装/主文件夹中的 jenkins.xml
。
在 <arguments>
块的末尾添加 --accessLoggerClassName=winstone.accesslog.SimpleAccessLogger --simpleAccessLogger.format=combined --simpleAccessLogger.file=%BASE%/logs/access.log
。
更新后的 Jenkins.xml
文件应如下所示:
<service>
<id>jenkins</id>
<name>Jenkins</name>
<description>This service runs Jenkins continuous integration system.</description>
<env name="JENKINS_HOME" value="%BASE%"/>
<executable>%JAVA_HOME%\bin\java</executable>
<arguments>-Xrs -Xmx3072m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war" --accessLoggerClassName=winstone.accesslog.SimpleAccessLogger --simpleAccessLogger.format=combined --simpleAccessLogger.file="%BASE%/logs/access.log"</arguments>
<logmode>rotate</logmode>
<onfailure action="restart" />
</service>
我是第一次尝试 jenkins。和哈德森一起体验一下。
我正在尝试调试从应用程序启动的远程作业。我什至不确定请求是否发送给了 jenkins master,而且我没有看到 UI 中正在排队的作业。
在哪里可以找到 jenkins 访问日志,这样我就可以查看服务器是否收到了请求?我在 mac.
上安装了 jenkins同样在 hudson world 中,我曾经查看以下内容来调试任何问题。如果有人可以为 jenkins 指出不同的相关日志,那就太好了。
- catalina.out
- localhost-YYYY-MM-DD.log
- 访问-YYYY-MM-DD.log
- access.log
非常感谢。
非常感谢任何帮助。
我认为默认情况下不启用访问日志,但您可以将其打开。 Here's the documentations 这样做。
Steps to enable an access log
For Ubuntu:
Add these lines to /etc/default/jenkins above JENKINS_ARGS:
Enable access log
JENKINS_ACCESSLOG="--accessLoggerClassName=winstone.accesslog.SimpleAccessLogger --simpleAccessLogger.format=combined --simpleAccessLogger.file=/var/log/jenkins/access.log"
Edit /etc/default/jenkins and add $JENKINS_ACCESSLOG to JENKINS_ARGS
Enable log rotation: edit /etc/logrotate.d/jenkins and change /var/log/jenkins/jenkins.log to /var/log/jenkins/*.log
除了@TheEllis 的回答:
对于 Jenkins Windows 服务,您可能需要更新位于安装/主文件夹中的 jenkins.xml
。
在 <arguments>
块的末尾添加 --accessLoggerClassName=winstone.accesslog.SimpleAccessLogger --simpleAccessLogger.format=combined --simpleAccessLogger.file=%BASE%/logs/access.log
。
更新后的 Jenkins.xml
文件应如下所示:
<service>
<id>jenkins</id>
<name>Jenkins</name>
<description>This service runs Jenkins continuous integration system.</description>
<env name="JENKINS_HOME" value="%BASE%"/>
<executable>%JAVA_HOME%\bin\java</executable>
<arguments>-Xrs -Xmx3072m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war" --accessLoggerClassName=winstone.accesslog.SimpleAccessLogger --simpleAccessLogger.format=combined --simpleAccessLogger.file="%BASE%/logs/access.log"</arguments>
<logmode>rotate</logmode>
<onfailure action="restart" />
</service>