[英]Creating Performance Counters in Java
有誰知道如何用Java創建一個新的性能計數器(perfmon工具)?
例如:用於監視用戶操作的數量/持續時間的新性能計數器。
我在C#中創建了這樣的性能計數器,這很容易,但是我找不到任何有助於在Java中創建它的東西......
不確定你期望這個工具做什么,但我會創建一些數據結構來記錄這些時間和計數
class UserActionStats {
int count;
long durationMS;
long start = 0;
public void startAction() {
start = System.currentTimeMillis();
}
public void endAction() {
durationMS += System.currentTimeMillis() - start;
count++;
}
}
這些的集合可能看起來像
private static final Map<String, UserActionStats> map =
new HashMap<String, UserActionStats>();
public static UserActionStats forUser(String userName) {
synchronized(map) {
UserActionStats uas = map.get(userName);
if (uas == null)
map.put(userName, uas = new UserActionStats());
return uas;
}
}
Java不能立即使用perfmon(但您應該在Solaris下看到DTrace)。
請參閱此問題以獲取建議: 在Perfmon中查看的Java應用程序性能計數器
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.