Browse Source

Fixed #TSB-1234 test

ilucky.si 1 year ago
parent
commit
3dc2103fc4
3 changed files with 17 additions and 17 deletions
  1. 9 9
      containers/registry.go
  2. 1 1
      ebpftracer/tracer.go
  3. 7 7
      main.go

+ 9 - 9
containers/registry.go

@@ -75,7 +75,7 @@ func NewRegistry(reg prometheus.Registerer, kernelVersion string, processInfoCh
 	if err := cgroup.Init(); err != nil {
 		return nil, err
 	}
-	if err := DockerdInit(); err != nil {
+	if err := DockerdInit(); err != nil { //IK: 初始化docker???
 		klog.Warningln(err)
 	}
 	if err := ContainerdInit(); err != nil {
@@ -94,24 +94,24 @@ func NewRegistry(reg prometheus.Registerer, kernelVersion string, processInfoCh
 
 	r := &Registry{
 		reg:    reg,
-		events: make(chan ebpftracer.Event, 10000), // TODO: 队列
+		events: make(chan ebpftracer.Event, 10000), // IK: 队列
 
 		hostConntrack: ct,
 
-		containersById:       map[ContainerID]*Container{}, // TODO: 缓存的一些关系映射
+		containersById:       map[ContainerID]*Container{}, // IK: 缓存的一些关系映射
 		containersByCgroupId: map[string]*Container{},
 		containersByPid:      map[uint32]*Container{},
 		ip2fqdn:              map[netaddr.IP]string{},
 
-		processInfoCh: processInfoCh, // TODO: 进程信息
+		processInfoCh: processInfoCh, // IK: 进程信息
 
-		tracer: ebpftracer.NewTracer(kernelVersion, *flags.DisableL7Tracing), // TODO: 核心代码
+		tracer: ebpftracer.NewTracer(kernelVersion, *flags.DisableL7Tracing), // IK: 核心代码
 	}
 	if err = reg.Register(r); err != nil {
 		return nil, err
 	}
-	go r.handleEvents(r.events)                   // TODO: 处理EBPF程序发出来的数据
-	if err = r.tracer.Run(r.events); err != nil { // TODO: 核心代码, attach Uprobe
+	go r.handleEvents(r.events)                   // IK: 处理EBPF程序发出来的数据
+	if err = r.tracer.Run(r.events); err != nil { // IK: 核心代码, attach Uprobe
 		close(r.events)
 		return nil, err
 	}
@@ -141,7 +141,7 @@ func (r *Registry) handleEvents(ch <-chan ebpftracer.Event) {
 	defer gcTicker.Stop()
 	for {
 		select {
-		case now := <-gcTicker.C: // TODO: 周期性做一些操作
+		case now := <-gcTicker.C:
 			for pid, c := range r.containersByPid {
 				cg, err := proc.ReadCgroup(pid)
 				if err != nil {
@@ -192,7 +192,7 @@ func (r *Registry) handleEvents(ch <-chan ebpftracer.Event) {
 				}
 			}
 			r.ip2fqdnLock.Unlock()
-		case e, more := <-ch: // TODO: 核心代码, 读取chan中的数据
+		case e, more := <-ch: // IK: 核心代码, 读取chan中的数据
 			if e.Pid == uint32(os.Getpid()) {
 				continue
 			}

+ 1 - 1
ebpftracer/tracer.go

@@ -164,7 +164,7 @@ func (t *Tracer) Close() {
 	t.collection.Close()
 }
 
-func (t *Tracer) init(ch chan<- Event) error { // TODO: 触发handleEvent.....这些数据的作用是什么呢?
+func (t *Tracer) init(ch chan<- Event) error { // IK: 触发handleEvent.....这些数据的作用是什么呢?
 	pids, err := proc.ListPids()
 	if err != nil {
 		return fmt.Errorf("failed to list pids: %w", err)

+ 7 - 7
main.go

@@ -91,7 +91,7 @@ func whitelistNodeExternalNetworks() {
 			if p.IP().IsLoopback() || common.IsIpPrivate(p.IP()) {
 				continue
 			}
-			// if the node has an external network IP, whitelist that network
+			// if the node has an external network IP, whitelist that network  // IK: 如果节点具有外部网络IP,则将该网络列入白名单...
 			common.ConnectionFilter.WhitelistPrefix(p)
 		}
 	}
@@ -109,11 +109,11 @@ type MetricData struct {
 
 func main() {
 	klog.LogToStderr(false)
-	klog.SetOutput(&RateLimitedLogOutput{limiter: rate.NewLimiter(rate.Limit(*flags.LogPerSecond), *flags.LogBurst)})
+	klog.SetOutput(&RateLimitedLogOutput{limiter: rate.NewLimiter(rate.Limit(*flags.LogPerSecond), *flags.LogBurst)}) // IK: 初始化日志逻辑...
 
 	klog.Infoln("agent version:", version)
 
-	hostname, kv, err := uname()
+	hostname, kv, err := uname() // IK: 获取主机名称,内核版本...
 	if err != nil {
 		klog.Exitln("failed to get uname:", err)
 	}
@@ -128,10 +128,10 @@ func main() {
 		klog.Exitf("the minimum Linux kernel version required is %s or later", minSupportedKernelVersion)
 	}
 
-	whitelistNodeExternalNetworks()
+	whitelistNodeExternalNetworks() // IK: 将外部网络放到白名单???
 
 	machineId := machineID()
-	tracing.Init(machineId, hostname, version) // TODO: 初始化发送地址等逻辑
+	tracing.Init(machineId, hostname, version) // IK: 初始化发送???
 	logs.Init(machineId, hostname, version)
 
 	registry := prometheus.NewRegistry()
@@ -145,7 +145,7 @@ func main() {
 
 	//processInfoCh := profiling.Init(machineId, hostname)
 
-	cr, err := containers.NewRegistry(registerer, kv, nil) // TODO: 核心代码
+	cr, err := containers.NewRegistry(registerer, kv, nil) // IK: 核心代码
 
 	if err != nil {
 		klog.Exitln(err)
@@ -224,7 +224,7 @@ func main() {
 		w.Write(jsonData)
 	}
 
-	if err := prom.StartAgent(machineId); err != nil { // TODO?
+	if err := prom.StartAgent(machineId); err != nil {
 		klog.Exitln(err)
 	}