code: func (c *LoggerCollection) SetTextTemplate(re *regexp.Regexp,
  	t *template.Template) {
  	c.mtx.Lock()
  	defer c.mtx.Unlock()
  
  	if re == nil {
  		c.handler.SetTextTemplate(t)
  	}
  	for name, logger := range c.loggers {
  		if re == nil || re.MatchString(name) {
  			logger.getHandler().SetTextTemplate(t)
  		}
  	}
  }
docs: // SetTextTemplate will set the current text template for all loggers with
  // names that match a provided regular expression. If the regular expression
  // is nil, then all loggers match. Note that not every handler is guaranteed
  // to support text templates and a text template will only apply to
  // text-oriented and unstructured handlers.