“We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil.”
metrics.register(name(QueueManager.class, name, "size"),
new Gauge>Integer<() {
public Integer getValue() {
return queue.size();
}
});
metrics.counter("pending-jobs");
public void addJob(Job job) {
pendingJobs.inc();
queue.offer(job);
}
public Job takeJob() {
pendingJobs.dec();
return queue.take();
}
private final Meter requests = metrics.meter("requests");
public void handleRequest(Request request, Response response) {
requests.mark();
// etc
}
private final Histogram resultCounts = metrics.histogram("result-counts");
public Collection<Result> search(Request parameters) {
// compute
resultCounts.update(results.size());
return results;
}
final Timer timer = registry.timer("get-requests");
...
final Timer.Context context = timer.time();
try {
// handle request
} finally {
context.stop();
}
Source disponibles sur Github :
Images d'illustrations en provenance de Flickr (CC-BY) :
Altemark | Becky Stern | boulter | Docklandsboy | jbcarre | jockew | mwichary | poster_boy | tanakawho