in utils.go [132:168]
func getKubernetesMetadata() *model.Kubernetes {
kubernetes, err := apmhostutil.Kubernetes()
if err != nil {
kubernetes = nil
}
namespace := os.Getenv("KUBERNETES_NAMESPACE")
podName := os.Getenv("KUBERNETES_POD_NAME")
podUID := os.Getenv("KUBERNETES_POD_UID")
nodeName := os.Getenv("KUBERNETES_NODE_NAME")
if namespace == "" && podName == "" && podUID == "" && nodeName == "" {
return kubernetes
}
if kubernetes == nil {
kubernetes = &model.Kubernetes{}
}
if namespace != "" {
kubernetes.Namespace = namespace
}
if nodeName != "" {
if kubernetes.Node == nil {
kubernetes.Node = &model.KubernetesNode{}
}
kubernetes.Node.Name = nodeName
}
if podName != "" || podUID != "" {
if kubernetes.Pod == nil {
kubernetes.Pod = &model.KubernetesPod{}
}
if podName != "" {
kubernetes.Pod.Name = podName
}
if podUID != "" {
kubernetes.Pod.UID = podUID
}
}
return kubernetes
}