bytes tx/rx stats per socket and per Operation

This commit is contained in:
Michael Davidsaver
2019-03-13 09:18:52 -07:00
parent badf14c4fa
commit a06c829050
11 changed files with 99 additions and 15 deletions

View File

@@ -24,6 +24,7 @@
#include <osiSock.h>
#include <osiProcess.h>
#include <epicsAssert.h>
#include <epicsAtomic.h>
#include <pv/byteBuffer.h>
#include <pv/timer.h>
@@ -1048,6 +1049,7 @@ void ServerGetHandler::handleResponse(osiSockAddr* responseFrom,
BaseChannelRequester::sendFailureMessage((int8)CMD_GET, transport, ioid, qosCode, BaseChannelRequester::badIOIDStatus);
return;
}
atomic::add(request->bytesRX, payloadSize);
if (!request->startRequest(qosCode))
{
@@ -1284,6 +1286,7 @@ void ServerPutHandler::handleResponse(osiSockAddr* responseFrom,
BaseChannelRequester::sendFailureMessage((int8)CMD_PUT, transport, ioid, qosCode, BaseChannelRequester::badIOIDStatus);
return;
}
atomic::add(request->bytesRX, payloadSize);
if (!request->startRequest(qosCode))
{
@@ -1523,6 +1526,7 @@ void ServerPutGetHandler::handleResponse(osiSockAddr* responseFrom,
BaseChannelRequester::sendFailureMessage((int8)CMD_PUT_GET, transport, ioid, qosCode, BaseChannelRequester::badIOIDStatus);
return;
}
atomic::add(request->bytesRX, payloadSize);
if (!request->startRequest(qosCode))
{
@@ -1817,6 +1821,7 @@ void ServerMonitorHandler::handleResponse(osiSockAddr* responseFrom,
BaseChannelRequester::sendFailureMessage((int8)CMD_MONITOR, transport, ioid, qosCode, BaseChannelRequester::badIOIDStatus);
return;
}
atomic::add(request->bytesRX, payloadSize);
if (ack)
{
@@ -2150,6 +2155,7 @@ void ServerArrayHandler::handleResponse(osiSockAddr* responseFrom,
BaseChannelRequester::sendFailureMessage((int8)CMD_ARRAY, transport, ioid, qosCode, BaseChannelRequester::badIOIDStatus);
return;
}
atomic::add(request->bytesRX, payloadSize);
if (!request->startRequest(qosCode))
{
@@ -2411,6 +2417,7 @@ void ServerDestroyRequestHandler::handleResponse(osiSockAddr* responseFrom,
failureResponse(transport, ioid, BaseChannelRequester::badIOIDStatus);
return;
}
// atomic::add(request->bytesRX, payloadSize);
// destroy
request->destroy();
@@ -2451,6 +2458,7 @@ void ServerCancelRequestHandler::handleResponse(osiSockAddr* responseFrom,
failureResponse(transport, ioid, BaseChannelRequester::badIOIDStatus);
return;
}
//atomic::add(request->bytesRX, payloadSize);
ChannelRequest::shared_pointer cr = dynamic_pointer_cast<ChannelRequest>(request->getOperation());
if (!cr)
@@ -2510,6 +2518,7 @@ void ServerProcessHandler::handleResponse(osiSockAddr* responseFrom,
BaseChannelRequester::sendFailureMessage((int8)CMD_PROCESS, transport, ioid, qosCode, BaseChannelRequester::badIOIDStatus);
return;
}
atomic::add(request->bytesRX, payloadSize);
if (!request->startRequest(qosCode))
{
@@ -2750,6 +2759,7 @@ void ServerRPCHandler::handleResponse(osiSockAddr* responseFrom,
BaseChannelRequester::sendFailureMessage((int8)CMD_RPC, transport, ioid, qosCode, BaseChannelRequester::badIOIDStatus);
return;
}
atomic::add(request->bytesRX, payloadSize);
if (!request->startRequest(qosCode))
{