in pkg/plugin/cloudtrace/cloudtrace.go [91:114]
func GetTags(span *tracepb.TraceSpan) (serviceTags json.RawMessage, spanTags json.RawMessage, err error) {
spanLabels := span.GetLabels()
serviceTagsMapArray := []map[string]string{}
spanTagsMapArray := []map[string]string{}
for key, value := range spanLabels {
if strings.HasPrefix(key, servicePrefix) || strings.HasPrefix(key, gaeServicePrefix) {
serviceTagsMapArray = append(serviceTagsMapArray, map[string]string{"key": key, "value": value})
} else {
spanTagsMapArray = append(spanTagsMapArray, map[string]string{"key": key, "value": value})
}
}
serviceTags, err = json.Marshal(serviceTagsMapArray)
if err != nil {
return nil, nil, err
}
spanTags, err = json.Marshal(spanTagsMapArray)
if err != nil {
return nil, nil, err
}
return serviceTags, spanTags, nil
}