blob: ffb8bf812f30de595267650a7a6a3a434c2853e9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
<div class="item">
<div class="gt-df gt-ac">
<div class="icon gt-ml-3 gt-mr-3">
{{if eq .Process.Type "request"}}
{{svg "octicon-globe" 16}}
{{else if eq .Process.Type "system"}}
{{svg "octicon-cpu" 16}}
{{else if eq .Process.Type "normal"}}
{{svg "octicon-terminal" 16}}
{{else}}
{{svg "octicon-code" 16}}
{{end}}
</div>
<div class="content gt-f1">
<div class="header">{{.Process.Description}}</div>
<div class="description">{{if ne .Process.Type "none"}}{{TimeSince .Process.Start ctx.Locale}}{{end}}</div>
</div>
<div>
{{if or (eq .Process.Type "request") (eq .Process.Type "normal")}}
<a class="delete-button icon" href="" data-url="{{.root.Link}}/cancel/{{.Process.PID}}" data-id="{{.Process.PID}}" data-name="{{.Process.Description}}">{{svg "octicon-trash" 16 "text-red"}}</a>
{{end}}
</div>
</div>
{{if .Process.Stacks}}
<div class="divided list gt-ml-3">
{{range .Process.Stacks}}
<div class="item">
<details>
<summary>
<div class="flex-text-inline">
<div class="header gt-ml-3">
<span class="icon gt-mr-3">{{svg "octicon-code" 16}}</span>{{.Description}}{{if gt .Count 1}} * {{.Count}}{{end}}
</div>
<div class="description">
{{range .Labels}}
<div class="ui label">{{.Name}}<div class="detail">{{.Value}}</div></div>
{{end}}
</div>
</div>
</summary>
<div class="list">
{{range .Entry}}
<div class="item gt-df gt-ac">
<span class="icon gt-mr-4">{{svg "octicon-dot-fill" 16}}</span>
<div class="content gt-f1">
<div class="header"><code>{{.Function}}</code></div>
<div class="description"><code>{{.File}}:{{.Line}}</code></div>
</div>
</div>
{{end}}
</div>
</details>
</div>
{{end}}
</div>
{{end}}
{{if .Process.Children}}
<div class="divided list">
{{range .Process.Children}}
{{template "admin/stacktrace-row" dict "Process" . "root" $.root}}
{{end}}
</div>
{{end}}
</div>
|