Class ClientStatsUtil


  • public class ClientStatsUtil
    extends Object
    Stats calculations needed by storm client code.
    • Field Detail

      • TO_GSID

        public static final org.apache.storm.stats.ClientStatsUtil.ToGlobalStreamIdTransformer TO_GSID
      • IDENTITY

        public static final org.apache.storm.stats.ClientStatsUtil.IdentityTransformer IDENTITY
    • Constructor Detail

      • ClientStatsUtil

        public ClientStatsUtil()
    • 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
      • 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 id
        executorStats - the stats for the executors
        uptime - 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 map
        key - the key to get it from
        Returns:
        the map stored under key
      • 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 stats
        secKeyFunc - transform the sub-key
        firstKeyFunc - transform the main key