OpenSDN source code
AgentStatsCollector Class Reference

#include <agent_stats_collector.h>

Inheritance diagram for AgentStatsCollector:
Collaboration diagram for AgentStatsCollector:

Public Types

enum  StatsType { InterfaceStatsType , VrfStatsType , DropStatsType }
 
- Public Types inherited from StatsCollector
enum  StatsInstance { FlowStatsCollector , AgentStatsCollector }
 

Public Member Functions

 AgentStatsCollector (boost::asio::io_context &io, Agent *agent)
 
virtual ~AgentStatsCollector ()
 
Agentagent () const
 
void SendInterfaceBulkGet ()
 
void SendVrfStatsBulkGet ()
 
void SendDropStatsBulkGet ()
 
bool Run ()
 
void RegisterDBClients ()
 
void Shutdown (void)
 
virtual IoContextAllocateIoContext (char *buf, uint32_t buf_len, StatsType type, uint32_t seq)
 
- Public Member Functions inherited from StatsCollector
 StatsCollector (int task_id, int32_t instance, boost::asio::io_service &io, int exp, std::string timer_name)
 
virtual ~StatsCollector ()
 
void InitDone ()
 
void Shutdown ()
 
void TestStartStopTimer (bool stop)
 
int expiry_time () const
 
void set_expiry_time (int time)
 
void RescheduleTimer (int time)
 

Protected Attributes

boost::scoped_ptr< AgentStatsSandeshContextintf_stats_sandesh_ctx_
 
boost::scoped_ptr< AgentStatsSandeshContextvrf_stats_sandesh_ctx_
 
boost::scoped_ptr< AgentStatsSandeshContextdrop_stats_sandesh_ctx_
 

Private Member Functions

void SendAsync (char *buf, uint32_t buf_len, StatsType type)
 
bool SendRequest (Sandesh &encoder, StatsType type)
 
 DISALLOW_COPY_AND_ASSIGN (AgentStatsCollector)
 

Private Attributes

Agentagent_
 

Additional Inherited Members

- Public Attributes inherited from StatsCollector
int run_counter_
 

Detailed Description

Definition at line 26 of file agent_stats_collector.h.

Member Enumeration Documentation

◆ StatsType

Enumerator
InterfaceStatsType 
VrfStatsType 
DropStatsType 

Definition at line 28 of file agent_stats_collector.h.

Constructor & Destructor Documentation

◆ AgentStatsCollector()

AgentStatsCollector::AgentStatsCollector ( boost::asio::io_context &  io,
Agent agent 
)

Definition at line 29 of file agent_stats_collector.cc.

Here is the call graph for this function:

◆ ~AgentStatsCollector()

AgentStatsCollector::~AgentStatsCollector ( )
virtual

Definition at line 43 of file agent_stats_collector.cc.

Member Function Documentation

◆ agent()

Agent* AgentStatsCollector::agent ( ) const
inline

Definition at line 36 of file agent_stats_collector.h.

◆ AllocateIoContext()

IoContext * AgentStatsCollector::AllocateIoContext ( char *  buf,
uint32_t  buf_len,
StatsType  type,
uint32_t  seq 
)
virtual

Definition at line 89 of file agent_stats_collector.cc.

◆ DISALLOW_COPY_AND_ASSIGN()

AgentStatsCollector::DISALLOW_COPY_AND_ASSIGN ( AgentStatsCollector  )
private

◆ RegisterDBClients()

void AgentStatsCollector::RegisterDBClients ( )

◆ Run()

bool AgentStatsCollector::Run ( void  )
virtual

Implements StatsCollector.

Definition at line 123 of file agent_stats_collector.cc.

Here is the call graph for this function:

◆ SendAsync()

void AgentStatsCollector::SendAsync ( char *  buf,
uint32_t  buf_len,
StatsType  type 
)
private

Definition at line 112 of file agent_stats_collector.cc.

Here is the call graph for this function:

◆ SendDropStatsBulkGet()

void AgentStatsCollector::SendDropStatsBulkGet ( )

Definition at line 67 of file agent_stats_collector.cc.

Here is the call graph for this function:

◆ SendInterfaceBulkGet()

void AgentStatsCollector::SendInterfaceBulkGet ( )

Definition at line 46 of file agent_stats_collector.cc.

Here is the call graph for this function:

◆ SendRequest()

bool AgentStatsCollector::SendRequest ( Sandesh encoder,
StatsType  type 
)
private

Definition at line 76 of file agent_stats_collector.cc.

Here is the call graph for this function:

◆ SendVrfStatsBulkGet()

void AgentStatsCollector::SendVrfStatsBulkGet ( )

Definition at line 57 of file agent_stats_collector.cc.

Here is the call graph for this function:

◆ Shutdown()

void AgentStatsCollector::Shutdown ( void  )

Definition at line 130 of file agent_stats_collector.cc.

Here is the call graph for this function:

Member Data Documentation

◆ agent_

Agent* AgentStatsCollector::agent_
private

Definition at line 54 of file agent_stats_collector.h.

◆ drop_stats_sandesh_ctx_

boost::scoped_ptr<AgentStatsSandeshContext> AgentStatsCollector::drop_stats_sandesh_ctx_
protected

Definition at line 49 of file agent_stats_collector.h.

◆ intf_stats_sandesh_ctx_

boost::scoped_ptr<AgentStatsSandeshContext> AgentStatsCollector::intf_stats_sandesh_ctx_
protected

Definition at line 47 of file agent_stats_collector.h.

◆ vrf_stats_sandesh_ctx_

boost::scoped_ptr<AgentStatsSandeshContext> AgentStatsCollector::vrf_stats_sandesh_ctx_
protected

Definition at line 48 of file agent_stats_collector.h.


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