Documentation ¶
Index ¶
Constants ¶
View Source
const ( PROMETHEUS_DURATION_NAME = "request_duration_seconds" PROMETHEUS_COUNT_NAME = "requests_total" SOURCE = "source" DESTINATION = "destination" SOURCE_NAMESPACE = "source_ns" DESTINATION_NAMESPACE = "destination_ns" HTTP_METHOD = "method" HTTP_STATUS = "response_code" DESTINATION_PORT = "destination_port" )
View Source
const TIME_RANGE = 60 * 1000 //miliseconds
Variables ¶
This section is empty.
Functions ¶
func SavePacket ¶
func SavePacket(info *TrafficInfo)
Types ¶
type PCapManager ¶
type PCapManager struct {
// contains filtered or unexported fields
}
func NewPCapManager ¶
func NewPCapManager(k8sIp string, aPodIp net.IP) *PCapManager
func (*PCapManager) InsideLocalPodIPRange ¶
func (manager *PCapManager) InsideLocalPodIPRange(dstIp string) bool
func (*PCapManager) Run ¶
func (manager *PCapManager) Run(handler PacketHandler)
type PacketHandler ¶
type PacketHandler func(packet *PacketInfo)
type PacketInfo ¶
type PacketInfo struct { SrcPort uint32 DstPort uint32 SrcIp string DstIp string TimestampNano int64 TcpTimestamp []byte // contains filtered or unexported fields }
func NewPacket ¶
func NewPacket(packet gopacket.Packet) *PacketInfo
func (*PacketInfo) GetApplicationPayload ¶
func (packet *PacketInfo) GetApplicationPayload() string
func (*PacketInfo) String ¶
func (info *PacketInfo) String() string
type PacketManager ¶
type PacketManager struct {
// contains filtered or unexported fields
}
func NewPacketManager ¶
func NewPacketManager(k8sManager *kubernetes.K8sResourceManager) (*PacketManager, error)
func (*PacketManager) Handle ¶
func (manager *PacketManager) Handle(packet *PacketInfo)
func (*PacketManager) Run ¶
func (manager *PacketManager) Run()
type TrafficInfo ¶
type TrafficInfo struct { SrcPort uint32 DstPort uint32 SrcIP string DstIP string Src string Dst string SrcNS string DstNS string Url string Method string Status string TcpRequestTimestamp []byte TcpResponseTimestamp []byte Next *TrafficInfo // contains filtered or unexported fields }
func NewTrafficInfo ¶
func NewTrafficInfo(packet *PacketInfo, url string, method string) *TrafficInfo
func (*TrafficInfo) GetDurationTimeMiliSeconds ¶
func (info *TrafficInfo) GetDurationTimeMiliSeconds() float64
func (*TrafficInfo) SetResponse ¶
func (info *TrafficInfo) SetResponse(status string, responseTimestampNano int64, tcpResponseTimestamp []byte)
func (*TrafficInfo) String ¶
func (info *TrafficInfo) String() string
type TrafficManager ¶
type TrafficManager struct {
// contains filtered or unexported fields
}
func (*TrafficManager) AddRequest ¶
func (manager *TrafficManager) AddRequest(info *TrafficInfo)
func (*TrafficManager) GetRequest ¶
func (manager *TrafficManager) GetRequest(srcIp string, srcPort uint32, dstIp string, dstPort uint32, tcpResponseTimestamp []byte) (*TrafficInfo, bool)
Click to show internal directories.
Click to hide internal directories.