private IPCLoggerChannelMetrics(IPCLoggerChannel ch) { this.ch = ch; Configuration conf = new HdfsConfiguration(); int[] intervals = conf.GetInts(DFSConfigKeys.DfsMetricsPercentilesIntervalsKey); if (intervals != null) { writeEndToEndLatencyQuantiles = new MutableQuantiles[intervals.Length]; writeRpcLatencyQuantiles = new MutableQuantiles[intervals.Length]; for (int i = 0; i < writeEndToEndLatencyQuantiles.Length; i++) { int interval = intervals[i]; writeEndToEndLatencyQuantiles[i] = registry.NewQuantiles("writesE2E" + interval + "s", "End-to-end time for write operations", "ops", "LatencyMicros", interval); writeRpcLatencyQuantiles[i] = registry.NewQuantiles("writesRpc" + interval + "s", "RPC RTT for write operations", "ops", "LatencyMicros", interval); } } else { writeEndToEndLatencyQuantiles = null; writeRpcLatencyQuantiles = null; } }