View Javadoc

1   // Autogenerated Jamon implementation
2   // /home/zhangduo/hbase/code/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/regionserver/ServerMetricsTmpl.jamon
3   
4   package org.apache.hadoop.hbase.tmpl.regionserver;
5   
6   // 24, 1
7   import java.util.*;
8   // 25, 1
9   import org.apache.hadoop.hbase.regionserver.HRegionServer;
10  // 26, 1
11  import org.apache.hadoop.hbase.ipc.MetricsHBaseServerWrapper;
12  // 27, 1
13  import org.apache.hadoop.hbase.regionserver.MetricsRegionServerWrapper;
14  // 28, 1
15  import org.apache.hadoop.hbase.util.Bytes;
16  // 29, 1
17  import org.apache.hadoop.hbase.HRegionInfo;
18  // 30, 1
19  import org.apache.hadoop.hbase.ServerName;
20  // 31, 1
21  import org.apache.hadoop.hbase.HBaseConfiguration;
22  // 32, 1
23  import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
24  // 33, 1
25  import org.apache.hadoop.hbase.protobuf.generated.AdminProtos.ServerInfo;
26  // 34, 1
27  import org.apache.hadoop.hbase.protobuf.generated.ClusterStatusProtos.RegionLoad;
28  // 35, 1
29  import org.apache.hadoop.hbase.util.DirectMemoryUtils;
30  // 36, 1
31  import org.apache.hadoop.util.StringUtils.TraditionalBinaryPrefix;
32  // 37, 1
33  import java.lang.management.MemoryUsage;
34  // 38, 1
35  import org.apache.hadoop.hbase.io.util.HeapMemorySizeUtil;
36  
37  public class ServerMetricsTmplImpl
38    extends org.jamon.AbstractTemplateImpl
39    implements org.apache.hadoop.hbase.tmpl.regionserver.ServerMetricsTmpl.Intf
40  
41  {
42    private final MetricsRegionServerWrapper mWrap;
43    private final MetricsHBaseServerWrapper mServerWrap;
44    protected static org.apache.hadoop.hbase.tmpl.regionserver.ServerMetricsTmpl.ImplData __jamon_setOptionalArguments(org.apache.hadoop.hbase.tmpl.regionserver.ServerMetricsTmpl.ImplData p_implData)
45    {
46      return p_implData;
47    }
48    public ServerMetricsTmplImpl(org.jamon.TemplateManager p_templateManager, org.apache.hadoop.hbase.tmpl.regionserver.ServerMetricsTmpl.ImplData p_implData)
49    {
50      super(p_templateManager, __jamon_setOptionalArguments(p_implData));
51      mWrap = p_implData.getMWrap();
52      mServerWrap = p_implData.getMServerWrap();
53    }
54    
55    @Override public void renderNoFlush(final java.io.Writer jamonWriter)
56      throws java.io.IOException
57    {
58      // 40, 1
59      jamonWriter.write("<div class=\"tabbable\">\n    <ul class=\"nav nav-pills\">\n        <li class=\"active\"><a href=\"#tab_baseStats\" data-toggle=\"tab\">Base Stats</a></li>\n        <li class=\"\"><a href=\"#tab_memoryStats\" data-toggle=\"tab\">Memory</a></li>\n        <li class=\"\"><a href=\"#tab_requestStats\" data-toggle=\"tab\">Requests</a></li>\n        <li class=\"\"><a href=\"#tab_walStats\" data-toggle=\"tab\">WALs</a></li>\n        <li class=\"\"><a href=\"#tab_storeStats\" data-toggle=\"tab\">Storefiles</a></li>\n        <li class=\"\"><a href=\"#tab_queueStats\" data-toggle=\"tab\">Queues</a></li>\n    </ul>\n    <div class=\"tab-content\" style=\"padding-bottom: 9px; border-bottom: 1px solid #ddd;\">\n        <div class=\"tab-pane active\" id=\"tab_baseStats\">\n            ");
60      // 51, 13
61      {
62        // 51, 13
63        __jamon_innerUnit__baseStats(jamonWriter, mWrap );
64      }
65      // 51, 43
66      jamonWriter.write("\n        </div>\n        <div class=\"tab-pane\" id=\"tab_memoryStats\">\n            ");
67      // 54, 13
68      {
69        // 54, 13
70        __jamon_innerUnit__memoryStats(jamonWriter, mWrap );
71      }
72      // 54, 45
73      jamonWriter.write("\n        </div>\n        <div class=\"tab-pane\" id=\"tab_requestStats\">\n            ");
74      // 57, 13
75      {
76        // 57, 13
77        __jamon_innerUnit__requestStats(jamonWriter, mWrap );
78      }
79      // 57, 46
80      jamonWriter.write("\n        </div>\n        <div class=\"tab-pane\" id=\"tab_walStats\">\n            ");
81      // 60, 13
82      {
83        // 60, 13
84        __jamon_innerUnit__walStats(jamonWriter, mWrap );
85      }
86      // 60, 42
87      jamonWriter.write("\n        </div>\n        <div class=\"tab-pane\" id=\"tab_storeStats\">\n            ");
88      // 63, 13
89      {
90        // 63, 13
91        __jamon_innerUnit__storeStats(jamonWriter, mWrap );
92      }
93      // 63, 44
94      jamonWriter.write("\n        </div>\n        <div class=\"tab-pane\" id=\"tab_queueStats\">\n            ");
95      // 66, 13
96      {
97        // 66, 13
98        __jamon_innerUnit__queueStats(jamonWriter, mWrap, mServerWrap);
99      }
100     // 66, 72
101     jamonWriter.write("\n        </div>\n    </div>\n</div>\n\n");
102   }
103   
104   
105   // 179, 1
106   private void __jamon_innerUnit__requestStats(final java.io.Writer jamonWriter, final MetricsRegionServerWrapper mWrap)
107     throws java.io.IOException
108   {
109     // 183, 1
110     jamonWriter.write("<table class=\"table table-striped\">\n<tr>\n    <th>Request Per Second</th>\n    <th>Read Request Count</th>\n    <th>Write Request Count</th>\n</tr>\n<tr>\n    <td>");
111     // 190, 9
112     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(String.format("%.0f", mWrap.getRequestsPerSecond())), jamonWriter);
113     // 190, 66
114     jamonWriter.write("</td>\n    <td>");
115     // 191, 9
116     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mWrap.getReadRequestsCount()), jamonWriter);
117     // 191, 43
118     jamonWriter.write("</td>\n    <td>");
119     // 192, 9
120     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mWrap.getWriteRequestsCount()), jamonWriter);
121     // 192, 44
122     jamonWriter.write("</td>\n</tr>\n</table>\n");
123   }
124   
125   
126   // 197, 1
127   private void __jamon_innerUnit__queueStats(final java.io.Writer jamonWriter, final MetricsRegionServerWrapper mWrap, final MetricsHBaseServerWrapper mServerWrap)
128     throws java.io.IOException
129   {
130     // 202, 1
131     jamonWriter.write("<table class=\"table table-striped\">\n<tr>\n    <th>Compaction Queue Length</th>\n    <th>Flush Queue Length</th>\n    <th>Priority Call Queue Length</th>\n    <th>General Call Queue Length</th>\n    <th>Replication Call Queue Length</th>\n    <th>Total Call Queue Size (bytes)</th>\n\n</tr>\n<tr>\n    <td>");
132     // 213, 9
133     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mWrap.getCompactionQueueSize()), jamonWriter);
134     // 213, 45
135     jamonWriter.write("</td>\n    <td>");
136     // 214, 9
137     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mWrap.getFlushQueueSize()), jamonWriter);
138     // 214, 40
139     jamonWriter.write("</td>\n    <td>");
140     // 215, 9
141     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mServerWrap.getPriorityQueueLength()), jamonWriter);
142     // 215, 51
143     jamonWriter.write("</td>\n    <td>");
144     // 216, 9
145     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mServerWrap.getGeneralQueueLength()), jamonWriter);
146     // 216, 50
147     jamonWriter.write("</td>\n    <td>");
148     // 217, 9
149     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mServerWrap.getReplicationQueueLength()), jamonWriter);
150     // 217, 54
151     jamonWriter.write("</td>\n    <td>");
152     // 218, 9
153     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(TraditionalBinaryPrefix.long2String(mServerWrap.getTotalQueueSize(), "B", 1)), jamonWriter);
154     // 218, 91
155     jamonWriter.write("</td>\n</tr>\n</table>\n");
156   }
157   
158   
159   // 94, 1
160   private void __jamon_innerUnit__memoryStats(final java.io.Writer jamonWriter, final MetricsRegionServerWrapper mWrap)
161     throws java.io.IOException
162   {
163     // 98, 1
164     long usedHeap = -1L;
165   long maxHeap = -1L;
166   final MemoryUsage usage = HeapMemorySizeUtil.safeGetHeapMemoryUsage();
167   if (usage != null) {
168     maxHeap = usage.getMax();
169     usedHeap = usage.getUsed();
170   }
171 
172     // 107, 1
173     jamonWriter.write("<table class=\"table table-striped\">\n<tr>\n    <tr>\n        <th>Used Heap</th>\n        <th>Max Heap</th>\n        <th>Direct Memory Used</th>\n        <th>Direct Memory Configured</th>\n        <th>Memstore Size</th>\n    </tr>\n</tr>\n<tr>\n    <td>\n        ");
174     // 119, 9
175     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(TraditionalBinaryPrefix.long2String(usedHeap, "B", 1)), jamonWriter);
176     // 119, 68
177     jamonWriter.write("\n    </td>\n    <td>\n        ");
178     // 122, 9
179     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(TraditionalBinaryPrefix.long2String(maxHeap, "B", 1)), jamonWriter);
180     // 122, 67
181     jamonWriter.write("\n    </td>\n    <td>\n        ");
182     // 125, 9
183     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(TraditionalBinaryPrefix.long2String(DirectMemoryUtils.getDirectMemoryUsage(), "B", 1)), jamonWriter);
184     // 125, 100
185     jamonWriter.write("\n    </td>\n    <td>\n        ");
186     // 128, 9
187     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(TraditionalBinaryPrefix.long2String(DirectMemoryUtils.getDirectMemorySize(), "B", 1)), jamonWriter);
188     // 128, 99
189     jamonWriter.write("\n    </td>\n    <td>\n        ");
190     // 131, 9
191     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(TraditionalBinaryPrefix.long2String(mWrap.getMemstoreSize(), "B", 1)), jamonWriter);
192     // 131, 83
193     jamonWriter.write("\n    </td>\n</tr>\n</table>\n");
194   }
195   
196   
197   // 71, 1
198   private void __jamon_innerUnit__baseStats(final java.io.Writer jamonWriter, final MetricsRegionServerWrapper mWrap)
199     throws java.io.IOException
200   {
201     // 75, 1
202     jamonWriter.write("<table class=\"table table-striped\">\n    <tr>\n\n        <th>Requests Per Second</th>\n        <th>Num. Regions</th>\n        <th>Block locality</th>\n        <th>Block locality (Secondary replicas)</th>\n        <th>Slow WAL Append Count</th>\n    </tr>\n    <tr>\n        <td>");
203     // 85, 13
204     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(String.format("%.0f", mWrap.getRequestsPerSecond())), jamonWriter);
205     // 85, 70
206     jamonWriter.write("</td>\n        <td>");
207     // 86, 13
208     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mWrap.getNumOnlineRegions()), jamonWriter);
209     // 86, 46
210     jamonWriter.write("</td>\n        <td>");
211     // 87, 13
212     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mWrap.getPercentFileLocal()), jamonWriter);
213     // 87, 46
214     jamonWriter.write("</td>\n        <td>");
215     // 88, 13
216     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mWrap.getPercentFileLocalSecondaryRegions()), jamonWriter);
217     // 88, 62
218     jamonWriter.write("</td>\n        <td>");
219     // 89, 13
220     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(0), jamonWriter);
221     // 89, 20
222     jamonWriter.write("</td>\n    </tr>\n</table>\n");
223   }
224   
225   
226   // 137, 1
227   private void __jamon_innerUnit__walStats(final java.io.Writer jamonWriter, final MetricsRegionServerWrapper mWrap)
228     throws java.io.IOException
229   {
230     // 141, 1
231     jamonWriter.write("<table class=\"table table-striped\">\n<tr>\n    <tr>\n        <th>Num. WAL Files</th>\n        <th>Size. WAL Files (bytes)</th>\n    </tr>\n</tr>\n<tr>\n    <td>");
232     // 149, 9
233     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mWrap.getNumWALFiles()), jamonWriter);
234     // 149, 37
235     jamonWriter.write("</td>\n    <td>");
236     // 150, 9
237     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(TraditionalBinaryPrefix.long2String(mWrap.getWALFileSize(), "B", 1)), jamonWriter);
238     // 150, 82
239     jamonWriter.write("</td>\n</tr>\n</table>\n");
240   }
241   
242   
243   // 155, 1
244   private void __jamon_innerUnit__storeStats(final java.io.Writer jamonWriter, final MetricsRegionServerWrapper mWrap)
245     throws java.io.IOException
246   {
247     // 159, 1
248     jamonWriter.write("<table class=\"table table-striped\">\n<tr>\n\n    <th>Num. Stores</th>\n    <th>Num. Storefiles</th>\n    <th>Root Index Size (bytes)</th>\n    <th>Index Size (bytes)</th>\n    <th>Bloom Size (bytes)</th>\n</tr>\n<tr>\n    <td>");
249     // 169, 9
250     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mWrap.getNumStores()), jamonWriter);
251     // 169, 35
252     jamonWriter.write("</td>\n    <td>");
253     // 170, 9
254     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(mWrap.getNumStoreFiles()), jamonWriter);
255     // 170, 39
256     jamonWriter.write("</td>\n    <td>");
257     // 171, 9
258     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(TraditionalBinaryPrefix.long2String(mWrap.getStoreFileIndexSize(), "B", 1)), jamonWriter);
259     // 171, 89
260     jamonWriter.write("</td>\n    <td>");
261     // 172, 9
262     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(TraditionalBinaryPrefix.long2String(mWrap.getTotalStaticIndexSize(), "B", 1)), jamonWriter);
263     // 172, 91
264     jamonWriter.write("</td>\n    <td>");
265     // 173, 9
266     org.jamon.escaping.Escaping.HTML.write(org.jamon.emit.StandardEmitter.valueOf(TraditionalBinaryPrefix.long2String(mWrap.getTotalStaticBloomSize(), "B", 1)), jamonWriter);
267     // 173, 91
268     jamonWriter.write("</td>\n</tr>\n</table>\n");
269   }
270   
271   
272 }