in kubelet-to-gcm/monitor/kubelet/translate.go [588:633]
func (t *Translator) getMonitoredResource(labels map[string]string) *v3.MonitoredResource {
resourceLabels := map[string]string{
"project_id": t.project,
"cluster_name": t.cluster,
}
if t.useOldResourceModel {
resourceLabels["zone"] = t.zone
resourceLabels["instance_id"] = t.instance
resourceLabels["namespace_id"] = labels["namespace"]
resourceLabels["pod_id"] = labels["pod"]
resourceLabels["container_name"] = labels["container"]
return &v3.MonitoredResource{
Type: "gke_container",
Labels: resourceLabels,
}
}
resourceLabels["location"] = t.clusterLocation
if t.schemaPrefix != "k8s_" {
resourceLabels["instance_id"] = t.instanceID
}
for k, v := range t.monitoredResourceLabels {
resourceLabels[k] = v
}
if _, found := labels["container"]; !found {
if t.instance != "" {
resourceLabels["node_name"] = t.instance
}
return &v3.MonitoredResource{
Type: t.schemaPrefix + "node",
Labels: resourceLabels,
}
}
resourceLabels["namespace_name"] = labels["namespace"]
resourceLabels["pod_name"] = labels["pod"]
resourceLabels["container_name"] = labels["container"]
return &v3.MonitoredResource{
Type: t.schemaPrefix + "container",
Labels: resourceLabels,
}
}