func AppendStatsTagRegexForAppMesh()

in agent/envoy_bootstrap/metric_filter/metric_filter.go [56:88]


func AppendStatsTagRegexForAppMesh(tags *[]*metrics.TagSpecifier, res *mesh_resource.MeshResource) {
	if extensionVersion() != "1" {
		return
	}
	*tags = append(*tags, &metrics.TagSpecifier{
		TagName: "TargetVirtualNode",
		TagValue: &metrics.TagSpecifier_Regex{
			Regex: targetVirtualNodeRegex,
		},
	})

	// NOTE: TargetVirtualService *must* be the last regex match since it greedily matches.
	// Virtual service names contain '.' which is also used as a metric namespace delimiter in Envoy
	*tags = append(*tags, &metrics.TagSpecifier{
		TagName: "TargetVirtualService",
		TagValue: &metrics.TagSpecifier_Regex{
			Regex: targetVirtualServiceRegex,
		},
	})

	*tags = append(*tags, &metrics.TagSpecifier{
		TagName: "Mesh",
		TagValue: &metrics.TagSpecifier_FixedValue{
			FixedValue: res.MeshName,
		},
	})
	*tags = append(*tags, &metrics.TagSpecifier{
		TagName: res.UpperCamelCaseType,
		TagValue: &metrics.TagSpecifier_FixedValue{
			FixedValue: res.Name,
		},
	})
}