List of usage examples for io.netty.handler.traffic TrafficCounter lastReadBytes
long lastReadBytes
To view the source code for io.netty.handler.traffic TrafficCounter lastReadBytes.
Click Source Link
From source file:io.hekate.network.netty.NettyServerClient.java
License:Apache License
private void init(Channel channel, HandshakeRequest request, NettyServerHandler handlerReg) { NettyServerHandlerConfig<Object> cfg = handlerReg.config(); if (cfg.getLoggerCategory() != null) { log = LoggerFactory.getLogger(cfg.getLoggerCategory()); debug = log.isDebugEnabled();//from w ww . j a v a 2 s.c o m trace = log.isTraceEnabled(); } this.eventLoop = channel.eventLoop(); this.serverHandler = cfg.getHandler(); this.handlerReg = handlerReg; this.metrics = handlerReg.metrics(); this.codec = request.codec(); // Register this client. handlerReg.add(this); // Configure metrics. if (metrics != null) { channel.pipeline() .addFirst(new ChannelTrafficShapingHandler(0, 0, NettyInternalConst.TRAFFIC_SHAPING_INTERVAL) { @Override protected void doAccounting(TrafficCounter counter) { metrics.onBytesReceived(counter.lastReadBytes()); metrics.onBytesSent(counter.lastWrittenBytes()); } }); } if (debug) { log.debug("Accepted connection [from={}, protocol={}]", address(), cfg.getProtocol()); } // Accept handshake. HandshakeAccept accept = new HandshakeAccept(hbInterval, hbLossThreshold, hbDisabled); channel.writeAndFlush(accept).addListener(future -> { if (channel.isOpen()) { connectNotified = true; // Notify on connect. serverHandler.onConnect(request.payload(), this); } }); }
From source file:org.graylog2.plugin.inputs.util.ThroughputCounter.java
License:Open Source License
public Map<String, Gauge<Long>> gauges() { Map<String, Gauge<Long>> gauges = new HashMap<>(); final TrafficCounter tc = trafficCounter(); gauges.put(READ_BYTES_1_SEC, new Gauge<Long>() { @Override// ww w . j a v a2 s .co m public Long getValue() { return tc.lastReadBytes(); } }); gauges.put(WRITTEN_BYTES_1_SEC, new Gauge<Long>() { @Override public Long getValue() { return tc.lastWrittenBytes(); } }); gauges.put(READ_BYTES_TOTAL, new Gauge<Long>() { @Override public Long getValue() { return tc.cumulativeReadBytes(); } }); gauges.put(WRITTEN_BYTES_TOTAL, new Gauge<Long>() { @Override public Long getValue() { return tc.cumulativeWrittenBytes(); } }); return gauges; }