glog.go
func (p *FilepathSpec) Set(value string) error {
	var filter []filepathPat
	for _, pat := range strings.Split(value, ",") {
		pattern, v, err := parseFilter(pat)
		if err != nil {
			return err
		}
		if v == 0 {
			continue
		}
		re, err := regexp.Compile(pattern)
		if err != nil {
			return fmt.Errorf("failed to compile %s as an regexp: %s", pattern, err)
		}
		// TODO: check syntax of filter?
		filter = append(filter, filepathPat{re, pattern, Level(v)})
	}
	p.filter = filter
	return nil
}
func (p *FilepathSpec) Set(value string) error {
	var filter []filepathPat
	for _, pat := range strings.Split(value, ",") {
		pattern, v, err := parseFilter(pat)
		if err != nil {
			return err
		}
		if v == 0 {
			continue
		}
		re, err := regexp.Compile(pattern)
		if err != nil {
			return fmt.Errorf("failed to compile %s as an regexp: %s", pattern, err)
		}
		// TODO: check syntax of filter?
		filter = append(filter, filepathPat{re, pattern, Level(v)})
	}
	p.filter = filter
	return nil
}
// Syntax: foo/bar=2,foo/bar/.*=1,f*=3