Skip to content

Commit

Permalink
Add pod info into generated output file names
Browse files Browse the repository at this point in the history
Signed-off-by: Chance Zibolski <chance.zibolski@gmail.com>
  • Loading branch information
chancez committed Jul 22, 2024
1 parent 1f3c102 commit 3e7c606
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 23 deletions.
34 changes: 12 additions & 22 deletions cmd/local_capture.go
Original file line number Diff line number Diff line change
Expand Up @@ -294,32 +294,22 @@ func (lcs *localCaptureSource) LinkType() layers.LinkType {
return lcs.linkType
}

func normalizePodFilename(pod *capperpb.Pod, ifaceName string, outputFormat capperpb.PcapOutputFormat) string {
var b strings.Builder
b.WriteString("pod:")
b.WriteString(pod.GetNamespace())
b.WriteString(":")
b.WriteString(pod.GetName())
b.WriteString(":iface:")
b.WriteString(ifaceName)
b.WriteString(".")
b.WriteString(outputFormatExtension(outputFormat))
return b.String()
}

func normalizeFilename(host string, netns string, ifaceName string, outputFormat capperpb.PcapOutputFormat) string {
func normalizeFilename(ad *capperpb.AncillaryPacketData, outputFormat capperpb.PcapOutputFormat) string {
var b strings.Builder
b.WriteString("host:")
b.WriteString(host)
if runtime.GOOS == "linux" {
if netns != "" {
b.WriteString(":netns:")
netnsStr := strings.Trim(strings.ReplaceAll(netns, "/", "-"), "-")
b.WriteString(netnsStr)
}
b.WriteString(ad.NodeName)
if ad.K8SPodName != "" {
b.WriteString(":podNamespace:")
b.WriteString(ad.K8SPodNamespace)
b.WriteString(":pod:")
b.WriteString(ad.K8SPodName)
} else if ad.Netns != "" {
b.WriteString(":netns:")
netnsStr := strings.Trim(strings.ReplaceAll(ad.Netns, "/", "-"), "-")
b.WriteString(netnsStr)
}
b.WriteString(":iface:")
b.WriteString(ifaceName)
b.WriteString(ad.IfaceName)
b.WriteString(".")
b.WriteString(outputFormatExtension(outputFormat))
return b.String()
Expand Down
2 changes: 1 addition & 1 deletion cmd/output_handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ func (h *outputFileHandler) HandlePacket(p gopacket.Packet) error {

var identifier string
if h.isDir {
identifier = normalizeFilename(ad.NodeName, ad.Netns, ad.IfaceName, h.outputFormat)
identifier = normalizeFilename(ad, h.outputFormat)
}

packetWriter, exists := h.writers[identifier]
Expand Down

0 comments on commit 3e7c606

Please sign in to comment.