Eunomia  0.1.0
A lightweight eBPF-based CloudNative Monitor tool for Container Security and Observability
tcp_tracker Class Reference

trace tcp start and exit More...

#include <tcp.h>

Inheritance diagram for tcp_tracker:
Inheritance graph
Collaboration diagram for tcp_tracker:
Collaboration graph

Classes

struct  csv_event_printer
 
struct  json_event_handler_base
 
struct  json_event_printer
 
struct  plain_text_event_printer
 
struct  prometheus_event_handler
 

Public Member Functions

 tcp_tracker (config_data config)
 
void start_tracker ()
 start the tracker thread More...
 
- Public Member Functions inherited from tracker_with_config< tcp_env, tcp_event >
 tracker_with_config (tracker_config< tcp_env, tcp_event > config)
 
virtual ~tracker_with_config ()
 
- Public Member Functions inherited from tracker_base
virtual ~tracker_base ()
 constructor More...
 
void stop_tracker (void)
 stop the tracker thread More...
 

Static Public Member Functions

static std::unique_ptr< tcp_trackercreate_tracker_with_default_env (tracker_event_handler handler)
 create a tracker with deafult config More...
 
static std::unique_ptr< tcp_trackercreate_tracker_with_args (tracker_event_handler handler, const std::vector< std::string > &args)
 
static int fill_src_dst (sender &s, sender &d, const tcp_event &e)
 

Additional Inherited Members

- Public Types inherited from tracker_with_config< tcp_env, tcp_event >
using event = tcp_event
 type alias for event More...
 
using config_data = tracker_config< tcp_env, tcp_event >
 type alias for env and config More...
 
using tracker_event_handler = std::shared_ptr< event_handler< tcp_event > >
 type alias for event handler More...
 
- Public Attributes inherited from tracker_with_config< tcp_env, tcp_event >
tracker_config< tcp_env, tcp_event > current_config
 config data More...
 
- Public Attributes inherited from tracker_base
volatile bool exiting
 is the tracker exiting More...
 

Detailed Description

trace tcp start and exit

ebpf tcp tracker interface the true implementation is in tcp/tcp_tracker.h

Constructor & Destructor Documentation

◆ tcp_tracker()

tcp_tracker::tcp_tracker ( config_data  config)

Member Function Documentation

◆ create_tracker_with_args()

static std::unique_ptr<tcp_tracker> tcp_tracker::create_tracker_with_args ( tracker_event_handler  handler,
const std::vector< std::string > &  args 
)
inlinestatic
Here is the call graph for this function:

◆ create_tracker_with_default_env()

std::unique_ptr< tcp_tracker > tcp_tracker::create_tracker_with_default_env ( tracker_event_handler  handler)
static

create a tracker with deafult config

Here is the caller graph for this function:

◆ fill_src_dst()

int tcp_tracker::fill_src_dst ( sender s,
sender d,
const tcp_event &  e 
)
static
Here is the caller graph for this function:

◆ start_tracker()

void tcp_tracker::start_tracker ( )
virtual

start the tracker thread

Implements tracker_base.


The documentation for this class was generated from the following files: