Package org.apache.storm.stats
Class ClientStatsUtil
- java.lang.Object
-
- org.apache.storm.stats.ClientStatsUtil
-
public class ClientStatsUtil extends Object
Stats calculations needed by storm client code.
-
-
Constructor Summary
Constructors Constructor Description ClientStatsUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static List<Integer>
convertExecutor(List<Long> executor)
Convert a List<Long> executor to java List<Integer>.static Map<List<Integer>,ExecutorStats>
convertExecutorZkHbs(Map<List<Long>,ExecutorStats> executorBeats)
Convert Long Executor Ids in ZkHbs to Integer ones structure to java maps.static <K,V>
Map<K,V>getMapByKey(Map map, String key)
Get a sub-map by a given key.static Map<List<Integer>,ExecutorStats>
mkEmptyExecutorZkHbs(Set<List<Long>> executors)
Make an map of executors to empty stats, in preparation for doing a heartbeat.static Map<String,Object>
mkZkWorkerHb(String topoId, Map<List<Integer>,ExecutorStats> executorStats, Integer uptime)
Create a new worker heartbeat for zookeeper.static ClusterWorkerHeartbeat
thriftifyZkWorkerHb(Map<String,Object> heartbeat)
static <K1,K2>
MapwindowSetConverter(Map stats, org.apache.storm.stats.ClientStatsUtil.KeyTransformer<K2> secKeyFunc, org.apache.storm.stats.ClientStatsUtil.KeyTransformer<K1> firstKeyFunc)
Converts stats to be over given windows of time.
-
-
-
Field Detail
-
SPOUT
public static final String SPOUT
- See Also:
- Constant Field Values
-
BOLT
public static final String BOLT
- See Also:
- Constant Field Values
-
TIME_SECS
public static final String TIME_SECS
- See Also:
- Constant Field Values
-
TO_GSID
public static final org.apache.storm.stats.ClientStatsUtil.ToGlobalStreamIdTransformer TO_GSID
-
IDENTITY
public static final org.apache.storm.stats.ClientStatsUtil.IdentityTransformer IDENTITY
-
-
Method Detail
-
convertExecutor
public static List<Integer> convertExecutor(List<Long> executor)
Convert a List<Long> executor to java List<Integer>.
-
mkEmptyExecutorZkHbs
public static Map<List<Integer>,ExecutorStats> mkEmptyExecutorZkHbs(Set<List<Long>> executors)
Make an map of executors to empty stats, in preparation for doing a heartbeat.- Parameters:
executors
- the executors as keys of the map- Returns:
- and empty map of executors to stats
-
convertExecutorZkHbs
public static Map<List<Integer>,ExecutorStats> convertExecutorZkHbs(Map<List<Long>,ExecutorStats> executorBeats)
Convert Long Executor Ids in ZkHbs to Integer ones structure to java maps.
-
mkZkWorkerHb
public static Map<String,Object> mkZkWorkerHb(String topoId, Map<List<Integer>,ExecutorStats> executorStats, Integer uptime)
Create a new worker heartbeat for zookeeper.- Parameters:
topoId
- the topology idexecutorStats
- the stats for the executorsuptime
- the uptime for the worker- Returns:
- the heartbeat map
-
getMapByKey
public static <K,V> Map<K,V> getMapByKey(Map map, String key)
Get a sub-map by a given key.- Parameters:
map
- the original mapkey
- the key to get it from- Returns:
- the map stored under key
-
thriftifyZkWorkerHb
public static ClusterWorkerHeartbeat thriftifyZkWorkerHb(Map<String,Object> heartbeat)
-
windowSetConverter
public static <K1,K2> Map windowSetConverter(Map stats, org.apache.storm.stats.ClientStatsUtil.KeyTransformer<K2> secKeyFunc, org.apache.storm.stats.ClientStatsUtil.KeyTransformer<K1> firstKeyFunc)
Converts stats to be over given windows of time.- Parameters:
stats
- the statssecKeyFunc
- transform the sub-keyfirstKeyFunc
- transform the main key
-
-