Comment 60 for bug 1729812

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/42713
Committed: http://github.com/Juniper/contrail-common/commit/fe034f12bb34c7834f05a74f297d0d57200805ff
Submitter: Zuul v3 CI (<email address hidden>)
Branch: master

commit fe034f12bb34c7834f05a74f297d0d57200805ff
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);
static void adjust_session_end_point_objects(std::vector <SessionEndpoint> & session_data);

static void Send(std::string category, SandeshLevel::type level, const std::vector<SessionEndpoint> & session_data) {
if (HandleTest(level, category)) {
return;
}
if (IsSendingAllMessagesDisabled() || IsSendingFlowsDisabled()) {
UpdateTxMsgFailStats("SessionEndpointObject", 0, SandeshTxDropReason::SendingDisabled);
if (IsLoggingDroppedAllowed(SandeshType::FLOW)) {
Log(category, level, session_data);
}
return;
}
if (is_send_slo_to_logger_enabled() || is_send_sampled_to_logger_enabled()) {
LogUnrolled(category, level, session_data);
}
if (level >= SendingLevel()) {
UpdateTxMsgFailStats("SessionEndpointObject", 0, SandeshTxDropReason::QueueLevel);
if (IsLoggingDroppedAllowed(SandeshType::FLOW)) {
std::string drop_reason = "SANDESH: Queue Drop: ";
DropLog(drop_reason, category, level, session_data);
}
return;
}
SessionEndpointObject * snh = new SessionEndpointObject(lseqnum_++, session_data);
if (!is_send_sampled_to_collector_enabled() && !is_send_slo_to_collector_enabled()) {
return;
}
if (is_send_sampled_to_collector_enabled() != is_send_slo_to_collector_enabled()) {
adjust_session_end_point_objects(snh->session_data); }

snh->set_level(level);
snh->set_category(category);
snh->Dispatch();
}

Partial-Bug: 1729812

Change-Id: Ie6024b95aa5becb56291cd1ef229ad7915a0a57a