Skip to content

Commit 78cda49

Browse files
committed
missing deployments fix
1 parent bcd1fae commit 78cda49

File tree

2 files changed

+27
-11
lines changed

2 files changed

+27
-11
lines changed

userspace/libsinsp/k8s_handler.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -638,8 +638,11 @@ void k8s_handler::process_events()
638638
{
639639
if(evt && !evt->isNull())
640640
{
641-
g_logger.log("k8s_handler (" + m_id + ") data:\n" + json_as_string(*evt),
642-
sinsp_logger::SEV_TRACE);
641+
if(g_logger.get_severity() >= sinsp_logger::SEV_TRACE)
642+
{
643+
g_logger.log("k8s_handler (" + m_id + ") processing event data:\n" + json_as_string(*evt),
644+
sinsp_logger::SEV_TRACE);
645+
}
643646
#ifdef HAS_CAPTURE
644647
if(m_is_captured)
645648
{

userspace/libsinsp/socket_handler.h

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -527,8 +527,18 @@ class socket_data_handler
527527
{
528528
const std::string chunked_end = "0\r\n\r\n";
529529
check_chunked_end(data);
530-
if(m_chunked_end.find(chunked_end) != std::string::npos)
530+
size_t pos = m_chunked_end.find(chunked_end);
531+
if(pos == 0)
531532
{
533+
return 0;
534+
}
535+
else if(pos != std::string::npos)
536+
{
537+
pos = data.find(chunked_end);
538+
if(pos != std::string::npos)
539+
{
540+
data = data.substr(0, pos);
541+
}
532542
extract_data(data);
533543
m_chunked_end.clear();
534544
m_chunked_detected = false;
@@ -848,8 +858,8 @@ class socket_data_handler
848858
{
849859
jsons.emplace_back(std::move(json));
850860
}
851-
g_logger.log("Socket handler (" + m_id + "): invoking callback(s).",
852-
sinsp_logger::SEV_TRACE);
861+
g_logger.log("Socket handler (" + m_id + "): invoking callback(s) for " +
862+
std::to_string(jsons.size()) + " events.", sinsp_logger::SEV_TRACE);
853863
if(m_json_filters.empty())
854864
{
855865
// if no filters provided and we got here, just do the whole JSON as-is
@@ -939,7 +949,7 @@ class socket_data_handler
939949
": no data received, giving up extraction ...", sinsp_logger::SEV_TRACE);
940950
return;
941951
}
942-
g_logger.log(m_id + ' ' + m_url.to_string(false) + m_path + ":\n\n" + data + "\n\n", sinsp_logger::SEV_TRACE);
952+
g_logger.log(m_id + ' ' + m_url.to_string(false) + m_path + "::extract_data()\n\n" + data + "\n\n", sinsp_logger::SEV_TRACE);
943953
if(!detect_chunked_transfer(data))
944954
{
945955
g_logger.log("Socket handler (" + m_id + ")::extract_data() " + m_url.to_string(false) + m_path +
@@ -948,12 +958,15 @@ class socket_data_handler
948958
}
949959

950960
m_data_buf.append(data);
951-
std::string::size_type pos = m_data_buf.find(m_json_begin);
952-
if(pos != std::string::npos) // JSON begin
961+
if(m_data_buf.size() && m_data_buf[0] != '{')
953962
{
954-
m_data_buf = m_data_buf.substr(pos + 2);
955-
g_logger.log("Socket handler (" + m_id + ")::extract_data() " + m_url.to_string(false) + m_path +
956-
": found JSON beginning", sinsp_logger::SEV_TRACE);
963+
std::string::size_type pos = m_data_buf.find(m_json_begin);
964+
if(pos != std::string::npos) // JSON begin
965+
{
966+
m_data_buf = m_data_buf.substr(pos + 2);
967+
g_logger.log("Socket handler (" + m_id + ")::extract_data() " + m_url.to_string(false) + m_path +
968+
": found JSON beginning", sinsp_logger::SEV_TRACE);
969+
}
957970
}
958971
if(is_chunked())
959972
{

0 commit comments

Comments
 (0)