|
| 1 | +<% @subtabs = worker_hosts.keys.sort unless worker_hosts.size == 1 %> |
| 2 | + |
1 | 3 | <% if params[:id] && worker = Resque::Worker.find(params[:id]) %>
|
2 | 4 |
|
3 | 5 | <h1>Worker <%= worker %></h1>
|
|
34 | 36 | </tr>
|
35 | 37 | </table>
|
36 | 38 |
|
37 |
| -<% elsif params[:id] %> |
| 39 | +<% elsif params[:id] && !worker_hosts.keys.include?(params[:id]) && params[:id] != 'all' %> |
38 | 40 |
|
39 | 41 | <h1>Worker doesn't exist</h1>
|
40 | 42 |
|
41 |
| -<% else %> |
| 43 | +<% elsif worker_hosts.size == 1 || params[:id] %> |
42 | 44 |
|
43 |
| - <h1 class='wi'><%= resque.workers.size %> Workers</h1> |
| 45 | + <% if worker_hosts.size == 1 || params[:id] == 'all' %> |
| 46 | + <% workers = Resque.workers %> |
| 47 | + <% else %> |
| 48 | + <% workers = worker_hosts[params[:id]].map { |id| Resque::Worker.find(id) } %> |
| 49 | + <% end %> |
| 50 | + |
| 51 | + <h1 class='wi'><%= workers.size %> Workers</h1> |
44 | 52 | <p class='intro'>The workers listed below are all registered as active on your system.</p>
|
45 | 53 | <table class='workers'>
|
46 | 54 | <tr>
|
|
49 | 57 | <th>Queues</th>
|
50 | 58 | <th>Processing</th>
|
51 | 59 | </tr>
|
52 |
| - <% for worker in (workers = resque.workers.sort_by { |w| w.to_s }) %> |
| 60 | + <% for worker in (workers = workers.sort_by { |w| w.to_s }) %> |
53 | 61 | <tr class="<%=state = worker.state%>">
|
54 | 62 | <td class='icon'><img src="<%=u state %>.png" alt="<%= state %>" title="<%= state %>"></td>
|
55 | 63 |
|
|
75 | 83 | <% end %>
|
76 | 84 | </table>
|
77 | 85 | <%=poll%>
|
| 86 | + |
| 87 | +<% else %> |
| 88 | + |
| 89 | + <h1 class='wi'>Workers</h1> |
| 90 | + <p class='intro'>The hostnames below all have registered workers. Select a hostname to view its workers, or "all" to see all workers.</p> |
| 91 | + <table class='queues'> |
| 92 | + <tr> |
| 93 | + <th>Hostname</th> |
| 94 | + <th>Workers</th> |
| 95 | + </tr> |
| 96 | + <% for hostname, workers in worker_hosts %> |
| 97 | + <tr> |
| 98 | + <td class='queue'><a class="queue" href="<%= url "workers/#{hostname}" %>"><%= hostname %></a></td> |
| 99 | + <td class='size'><%= workers.size %></td> |
| 100 | + </tr> |
| 101 | + <% end %> |
| 102 | + <tr class="failed"> |
| 103 | + <td class='queue failed'><a class="queue" href="<%= url "workers/all" %>">all workers</a></td> |
| 104 | + <td class='size'><%= Resque.workers.size %></td> |
| 105 | + </tr> |
| 106 | + </table> |
| 107 | + |
| 108 | + |
78 | 109 | <% end %>
|
0 commit comments