Browse Source

caddyhttp: Match hostnames with wildcards to loggers (#3378)

* adding wildcard matching of logger names

* reordering precedence for more specific loggers to match first

* removing dependence on certmagic and extra loop

Co-authored-by: GregoryDosh <GregoryDosh@users.noreply.github.com>
master
Gregory Dosh 5 years ago
committed by GitHub
parent
commit
d534162556
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 14
      modules/caddyhttp/server.go

14
modules/caddyhttp/server.go

@ -456,6 +456,20 @@ func (slc ServerLogConfig) getLoggerName(host string) string {
if loggerName, ok := slc.LoggerNames[host]; ok {
return loggerName
}
// Try matching wildcard domains if other non-specific loggers exist
labels := strings.Split(host, ".")
for i := range labels {
if labels[i] == "" {
continue
}
labels[i] = "*"
wildcardHost := strings.Join(labels, ".")
if loggerName, ok := slc.LoggerNames[wildcardHost]; ok {
return loggerName
}
}
return slc.DefaultLoggerName
}

Loading…
Cancel
Save