summaryrefslogtreecommitdiffstats
path: root/src/go/collectors/go.d.plugin/pkg/socket/utils.go
blob: dcc48b383f57134834766f26b3c6c628ea7db979 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// SPDX-License-Identifier: GPL-3.0-or-later

package socket

import "strings"

func IsUnixSocket(address string) bool {
	return strings.HasPrefix(address, "/") || strings.HasPrefix(address, "unix://")
}

func IsUdpSocket(address string) bool {
	return strings.HasPrefix(address, "udp://")
}

func networkType(address string) (string, string) {
	switch {
	case IsUnixSocket(address):
		address = strings.TrimPrefix(address, "unix://")
		return "unix", address
	case IsUdpSocket(address):
		return "udp", strings.TrimPrefix(address, "udp://")
	default:
		return "tcp", strings.TrimPrefix(address, "tcp://")
	}
}