#include <time.h>
-
using namespace std;
using namespace anna::diameter;
using namespace anna::diameter::comm;
countSendings(cid, aid, true /* send ok */);
// Trace non-application messages:
LOGDEBUG(
-
if((cid == helpers::base::COMMANDID__Capabilities_Exchange_Request) ||
(cid == helpers::base::COMMANDID__Device_Watchdog_Request) ||
- (cid == helpers::base::COMMANDID__Disconnect_Peer_Request)) {
- anna::Logger::debug("Sent DataBlock to XML representation:", ANNA_FILE_LOCATION);
- try { anna::diameter::codec::Message msg; msg.decode(message->getBody()); /* decode to be traced */ } catch(anna::RuntimeException&) {;}
+ (cid == helpers::base::COMMANDID__Disconnect_Peer_Request)) {
+ anna::Logger::debug("Sent DataBlock to XML representation:", ANNA_FILE_LOCATION);
+ try {
+ anna::diameter::codec::Message msg(a_engine->getBaseProtocolCodecEngine()); msg.decode(message->getBody()); /* decode to be traced */
+ }
+ catch(anna::RuntimeException &ex) {
+ std::string msg = ex.getText();
+ msg += " | Use diameter::comm::Engine::setBaseProtocolCodecEngine() to allow internal base protocol messages full tracing";
+ anna::Logger::debug(msg, ANNA_FILE_LOCATION);
+ }
}
);
a_parent->eventPeerShutdown(this);
}
+void ClientSession::eventRequestRetransmission(Message *request) throw() {
+
+ // OAM
+ OamModule &oamModule = OamModule::instantiate();
+ oamModule.count(OamModule::Counter::RequestRetransmitted);
+ oamModule.count(OamModule::Counter::RequestRetransmittedOnClientSession);
+
+ // Inform father server:
+ a_parent->eventRequestRetransmission(this, request);
+}
+
void ClientSession::eventResponse(const Response& response) throw(anna::RuntimeException) {
// Inform father server:
a_parent->eventResponse(response);
msg += anna::diameter::functions::commandIdAsPairString(cid);
anna::Logger::debug(msg, ANNA_FILE_LOCATION);
- if((cid == helpers::base::COMMANDID__Capabilities_Exchange_Answer) || (cid.first == helpers::base::COMMANDID__Device_Watchdog_Request.first))
- try { anna::diameter::codec::Message dmsg; dmsg.decode(db); /* decode to be traced */ } catch(anna::RuntimeException&) {;}
+ if( (cid == helpers::base::COMMANDID__Capabilities_Exchange_Answer) ||
+ (cid.first == helpers::base::COMMANDID__Device_Watchdog_Request.first)) {
+ try {
+ anna::diameter::codec::Message dmsg(a_engine->getBaseProtocolCodecEngine()); dmsg.decode(db); /* decode to be traced */
+ }
+ catch(anna::RuntimeException &ex) {
+ std::string msg = ex.getText();
+ msg += " | Use diameter::comm::Engine::setBaseProtocolCodecEngine() to allow internal base protocol messages full tracing";
+ anna::Logger::debug(msg, ANNA_FILE_LOCATION);
+ }
+ }
);
// Main counters:
OamModule &oamModule = OamModule::instantiate();