@Override public void messageSent(final IoSession session, final Object message) throws Exception { m_log.debug("TCP frame messages sent: {}",session.getWrittenMessages()); m_log.debug("TCP frame bytes sent: {}", session.getWrittenBytes()); super.messageSent(session, message); }
public void onData(final InetSocketAddress remoteAddress, final IoSession session, final byte[] data) { m_log.debug("Received data message"); final IoSession localSession = onRemoteAddressOpened(remoteAddress, session); final ByteBuffer dataBuf = ByteBuffer.wrap(data); localSession.write(dataBuf); m_log.debug("Local bytes written: {}", localSession.getWrittenBytes()); }
sessStat.lastByteWrite = session.getWrittenBytes(); sessStat.lastMessageRead = session.getReadMessages(); sessStat.lastMessageWrite = session.getWrittenMessages(); tmpBytesReadThroughput += sessStat.byteReadThroughput; sessStat.byteWrittenThroughput = (session.getWrittenBytes() - sessStat.lastByteWrite) / (pollingInterval / 1000f); tmpBytesWrittenThroughput += sessStat.byteWrittenThroughput;
private void removeSession(IoSession session) { // remove the session from the list of polled sessions polledSessions.remove(session); // add the bytes processed between last polling and session closing // prevent non seen byte with non-connected protocols like HTTP and datagrams IoSessionStat sessStat = (IoSessionStat) session.getAttribute(KEY); // computing with time between polling and closing long currentTime = System.currentTimeMillis(); synchronized (calcLock) { bytesReadThroughput += (session.getReadBytes() - sessStat.lastByteRead) / ((currentTime - sessStat.lastPollingTime) / 1000f); bytesWrittenThroughput += (session.getWrittenBytes() - sessStat.lastByteWrite) / ((currentTime - sessStat.lastPollingTime) / 1000f); msgReadThroughput += (session.getReadMessages() - sessStat.lastMessageRead) / ((currentTime - sessStat.lastPollingTime) / 1000f); msgWrittenThroughput += (session.getWrittenMessages() - sessStat.lastMessageWrite) / ((currentTime - sessStat.lastPollingTime) / 1000f); } session.removeAttribute(KEY); }