This fix lets the session logs go to any or all of collector/
file/syslog. To accommodate this, 2 new logger object is
created for handling only SLO/Sample session destinations. The
destinations to this logger are provided by the agent. A snippet
of the generated_file is added to the bug. Here is a snippet of
the generated sandesh file:
Reviewed: https:/ /review. opencontrail. org/42713 github. com/Juniper/ contrail- common/ commit/ fe034f12bb34c78 34f05a74f297d0d 57200805ff
Committed: http://
Submitter: Zuul v3 CI (<email address hidden>)
Branch: master
commit fe034f12bb34c78 34f05a74f297d0d 57200805ff
Author: arvindvis <email address hidden>
Date: Wed May 2 16:22:45 2018 -0700
Logging of sessions
This fix lets the session logs go to any or all of collector/
file/syslog. To accommodate this, 2 new logger object is
created for handling only SLO/Sample session destinations. The
destinations to this logger are provided by the agent. A snippet
of the generated_file is added to the bug. Here is a snippet of
the generated sandesh file:
static void LogUnrolled( std::string category, SandeshLevel::type level, const std::vector< SessionEndpoint > & session_data); session_ end_point_ objects( std::vector <SessionEndpoint> & session_data);
static void adjust_
static void Send(std::string category, SandeshLevel::type level, const std::vector< SessionEndpoint > & session_data) { ssagesDisabled( ) || IsSendingFlowsD isabled( )) { Stats(" SessionEndpoint Object" , 0, SandeshTxDropRe ason::SendingDi sabled) ; edAllowed( SandeshType: :FLOW)) { slo_to_ logger_ enabled( ) || is_send_ sampled_ to_logger_ enabled( )) { category, level, session_data); Stats(" SessionEndpoint Object" , 0, SandeshTxDropRe ason::QueueLeve l); edAllowed( SandeshType: :FLOW)) { drop_reason, category, level, session_data); Object * snh = new SessionEndpoint Object( lseqnum_ ++, session_data); sampled_ to_collector_ enabled( ) && !is_send_ slo_to_ collector_ enabled( )) { sampled_ to_collector_ enabled( ) != is_send_ slo_to_ collector_ enabled( )) { session_ end_point_ objects( snh->session_ data); }
if (HandleTest(level, category)) {
return;
}
if (IsSendingAllMe
UpdateTxMsgFail
if (IsLoggingDropp
Log(category, level, session_data);
}
return;
}
if (is_send_
LogUnrolled(
}
if (level >= SendingLevel()) {
UpdateTxMsgFail
if (IsLoggingDropp
std::string drop_reason = "SANDESH: Queue Drop: ";
DropLog(
}
return;
}
SessionEndpoint
if (!is_send_
return;
}
if (is_send_
adjust_
snh->set_ level(level) ; category( category) ;
snh->set_
snh->Dispatch();
}
Partial-Bug: 1729812
Change-Id: Ie6024b95aa5bec b56291cd1ef229a d7915a0a57a