Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
jenkins
提交
55d855a1
J
jenkins
项目概览
xxadev
/
jenkins
与 Fork 源项目一致
从无法访问的项目Fork
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
jenkins
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
55d855a1
编写于
4月 18, 2014
作者:
D
Daniel Beck
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[FIXED JENKINS-22672] Make /threadDump easier to use.
上级
dcfeaf3c
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
16 addition
and
3 deletion
+16
-3
core/src/main/java/jenkins/model/Jenkins.java
core/src/main/java/jenkins/model/Jenkins.java
+2
-1
core/src/main/resources/jenkins/model/Jenkins/threadDump.jelly
...src/main/resources/jenkins/model/Jenkins/threadDump.jelly
+14
-2
未找到文件。
core/src/main/java/jenkins/model/Jenkins.java
浏览文件 @
55d855a1
...
...
@@ -279,6 +279,7 @@ import java.util.Properties;
import
java.util.Set
;
import
java.util.StringTokenizer
;
import
java.util.TreeSet
;
import
java.util.TreeMap
;
import
java.util.concurrent.ConcurrentHashMap
;
import
java.util.concurrent.CopyOnWriteArrayList
;
import
java.util.concurrent.ExecutionException
;
...
...
@@ -2954,7 +2955,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve
r
.
put
(
e
.
getKey
(),
Collections
.
singletonMap
(
"Failed to retrieve thread dump"
,
sw
.
toString
()));
}
}
return
r
;
return
Collections
.
unmodifiableSortedMap
(
new
TreeMap
<
String
,
Map
<
String
,
String
>>(
r
))
;
}
public
synchronized
TopLevelItem
doCreateItem
(
StaplerRequest
req
,
StaplerResponse
rsp
)
throws
IOException
,
ServletException
{
...
...
core/src/main/resources/jenkins/model/Jenkins/threadDump.jelly
浏览文件 @
55d855a1
...
...
@@ -32,11 +32,23 @@ THE SOFTWARE.
<l:main-panel>
<h1>${%Thread Dump}</h1>
<j:forEach var="e" items="${it.getAllThreadDumps().entrySet()}" varStatus="loop">
<j:set var="tdumps" value="${it.getAllThreadDumps()}"/>
<j:forEach var="e" items="${tdumps.entrySet()}">
<j:if test="${e.key != null and e.key.length() > 0}">
<a href="#id${e.key.hashCode()}"><img src="${imagesURL}/16x16/computer.png" style="margin-left:10px;" /> ${e.key}</a>
</j:if>
</j:forEach>
<j:forEach var="e" items="${tdumps.entrySet()}" varStatus="loop">
<j:if test="${!loop.first}">
<hr style="margin-bottom:6em"/>
</j:if>
<h1>${e.key}</h1>
<j:if test="${e.key != null and e.key.length() > 0}">
<h1 id="id${e.key.hashCode()}">
<img src="${imagesURL}/32x32/computer.png"/> <a href="/computer/${e.key}" class="model-link inside">${e.key}</a>
</h1>
</j:if>
<j:forEach var="t" items="${e.value.entrySet()}">
<h2>${t.key}</h2>
<pre>${t.value}</pre>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录