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.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static String` | `BOLT` |
    `static org.apache.storm.stats.ClientStatsUtil.IdentityTransformer` | `IDENTITY` |
    `static String` | `SPOUT` |
    `static String` | `TIME_SECS` |
    `static org.apache.storm.stats.ClientStatsUtil.ToGlobalStreamIdTransformer` | `TO_GSID` |

  - ### 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> 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.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 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

  - ### 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

    - #### 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 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

    - #### 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 stats
        `secKeyFunc` - transform the sub-key
        `firstKeyFunc` - transform the main key