mirror of
https://github.com/weaveworks/scope.git
synced 2026-07-21 06:20:31 +00:00
use walkFlows
This commit is contained in:
@@ -30,6 +30,7 @@ type Reporter struct {
|
||||
spyProcs bool
|
||||
walkProc bool
|
||||
flowWalker flowWalker // interface
|
||||
ebpfTracker *EbpfTracker
|
||||
scanner procspy.ConnectionScanner
|
||||
natMapper natMapper
|
||||
reverseResolver *reverseResolver
|
||||
@@ -59,6 +60,7 @@ func NewReporter(hostID, hostName string, spyProcs, useConntrack, walkProc bool,
|
||||
spyProcs: spyProcs,
|
||||
walkProc: walkProc,
|
||||
flowWalker: newConntrackFlowWalker(useConntrack, procRoot),
|
||||
ebpfTracker: NewEbpfTracker("/home/asymmetric/code/kinvolk/bcc/examples/tracing/tcpv4tracer.py"),
|
||||
natMapper: makeNATMapper(newConntrackFlowWalker(useConntrack, procRoot, "--any-nat")),
|
||||
reverseResolver: newReverseResolver(),
|
||||
scanner: scanner,
|
||||
@@ -136,6 +138,23 @@ func (r *Reporter) Report() (report.Report, error) {
|
||||
})
|
||||
}
|
||||
|
||||
// eBPF
|
||||
{
|
||||
r.ebpfTracker.WalkEvents(func(e ConnectionEvent) {
|
||||
tuple := fourTuple{
|
||||
e.SourceAddress.String(),
|
||||
e.DestAddress.String(),
|
||||
e.SourcePort,
|
||||
e.DestPort,
|
||||
}
|
||||
|
||||
extraNodeInfo := map[string]string{
|
||||
Conntracked: "true",
|
||||
}
|
||||
r.addConnection(&rpt, tuple, "", extraNodeInfo, extraNodeInfo)
|
||||
})
|
||||
}
|
||||
|
||||
if r.walkProc {
|
||||
conns, err := r.scanner.Connections(r.spyProcs)
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user