mirror of
https://github.com/caddyserver/caddy.git
synced 2025-01-28 21:06:01 +03:00
core: Variadic Context.Logger(); soft deprecation
Ideally I'd just remove the parameter to caddy.Context.Logger(), but this would break most Caddy plugins. Instead, I'm making it variadic and marking it as partially deprecated. In the future, I might completely remove the parameter once most plugins have updated.
This commit is contained in:
parent
bffc258732
commit
e43b6d8178
27 changed files with 71 additions and 67 deletions
|
@ -113,7 +113,7 @@ func (hl HTTPLoader) LoadConfig(ctx caddy.Context) ([]byte, error) {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
for _, warn := range warnings {
|
for _, warn := range warnings {
|
||||||
ctx.Logger(hl).Warn(warn.String())
|
ctx.Logger().Warn(warn.String())
|
||||||
}
|
}
|
||||||
|
|
||||||
return result, nil
|
return result, nil
|
||||||
|
@ -129,7 +129,7 @@ func (hl HTTPLoader) makeClient(ctx caddy.Context) (*http.Client, error) {
|
||||||
|
|
||||||
// client authentication
|
// client authentication
|
||||||
if hl.TLS.UseServerIdentity {
|
if hl.TLS.UseServerIdentity {
|
||||||
certs, err := ctx.IdentityCredentials(ctx.Logger(hl))
|
certs, err := ctx.IdentityCredentials(ctx.Logger())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("getting server identity credentials: %v", err)
|
return nil, fmt.Errorf("getting server identity credentials: %v", err)
|
||||||
}
|
}
|
||||||
|
|
43
context.go
43
context.go
|
@ -442,10 +442,27 @@ func (ctx Context) Storage() certmagic.Storage {
|
||||||
return ctx.cfg.storage
|
return ctx.cfg.storage
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: aw man, can I please change this?
|
// Logger returns a logger that is intended for use by the most
|
||||||
// Logger returns a logger that can be used by mod.
|
// recent module associated with the context. Callers should not
|
||||||
func (ctx Context) Logger(mod Module) *zap.Logger {
|
// pass in any arguments unless they want to associate with a
|
||||||
// TODO: if mod is nil, use ctx.Module() instead...
|
// different module; it panics if more than 1 value is passed in.
|
||||||
|
//
|
||||||
|
// Originally, this method's signature was `Logger(mod Module)`,
|
||||||
|
// requiring that an instance of a Caddy module be passsed in.
|
||||||
|
// However, that is no longer necessary, as the closest module
|
||||||
|
// most recently associated with the context will be automatically
|
||||||
|
// assumed. To prevent a sudden breaking change, this method's
|
||||||
|
// signature has been changed to be variadic, but we may remove
|
||||||
|
// the parameter altogether in the future. Callers should not
|
||||||
|
// pass in any argument. If there is valid need to specify a
|
||||||
|
// different module, please open an issue to discuss.
|
||||||
|
//
|
||||||
|
// PARTIALLY DEPRECATED: The Logger(module) form is deprecated and
|
||||||
|
// may be removed in the future. Do not pass in any arguments.
|
||||||
|
func (ctx Context) Logger(module ...Module) *zap.Logger {
|
||||||
|
if len(module) > 1 {
|
||||||
|
panic("more than 1 module passed in")
|
||||||
|
}
|
||||||
if ctx.cfg == nil {
|
if ctx.cfg == nil {
|
||||||
// often the case in tests; just use a dev logger
|
// often the case in tests; just use a dev logger
|
||||||
l, err := zap.NewDevelopment()
|
l, err := zap.NewDevelopment()
|
||||||
|
@ -454,23 +471,13 @@ func (ctx Context) Logger(mod Module) *zap.Logger {
|
||||||
}
|
}
|
||||||
return l
|
return l
|
||||||
}
|
}
|
||||||
|
mod := ctx.Module()
|
||||||
|
if len(module) > 0 {
|
||||||
|
mod = module[0]
|
||||||
|
}
|
||||||
return ctx.cfg.Logging.Logger(mod)
|
return ctx.cfg.Logging.Logger(mod)
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: use this
|
|
||||||
// // Logger returns a logger that can be used by the current module.
|
|
||||||
// func (ctx Context) Log() *zap.Logger {
|
|
||||||
// if ctx.cfg == nil {
|
|
||||||
// // often the case in tests; just use a dev logger
|
|
||||||
// l, err := zap.NewDevelopment()
|
|
||||||
// if err != nil {
|
|
||||||
// panic("config missing, unable to create dev logger: " + err.Error())
|
|
||||||
// }
|
|
||||||
// return l
|
|
||||||
// }
|
|
||||||
// return ctx.cfg.Logging.Logger(ctx.Module())
|
|
||||||
// }
|
|
||||||
|
|
||||||
// Modules returns the lineage of modules that this context provisioned,
|
// Modules returns the lineage of modules that this context provisioned,
|
||||||
// with the most recent/current module being last in the list.
|
// with the most recent/current module being last in the list.
|
||||||
func (ctx Context) Modules() []Module {
|
func (ctx Context) Modules() []Module {
|
||||||
|
|
|
@ -119,7 +119,7 @@ func (App) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision sets up the app.
|
// Provision sets up the app.
|
||||||
func (app *App) Provision(ctx caddy.Context) error {
|
func (app *App) Provision(ctx caddy.Context) error {
|
||||||
app.logger = ctx.Logger(app)
|
app.logger = ctx.Logger()
|
||||||
app.subscriptions = make(map[string]map[caddy.ModuleID][]Handler)
|
app.subscriptions = make(map[string]map[caddy.ModuleID][]Handler)
|
||||||
|
|
||||||
for _, sub := range app.Subscriptions {
|
for _, sub := range app.Subscriptions {
|
||||||
|
|
|
@ -160,7 +160,7 @@ func (app *App) Provision(ctx caddy.Context) error {
|
||||||
}
|
}
|
||||||
app.tlsApp = tlsAppIface.(*caddytls.TLS)
|
app.tlsApp = tlsAppIface.(*caddytls.TLS)
|
||||||
app.ctx = ctx
|
app.ctx = ctx
|
||||||
app.logger = ctx.Logger(app)
|
app.logger = ctx.Logger()
|
||||||
|
|
||||||
eventsAppIface, err := ctx.App("events")
|
eventsAppIface, err := ctx.App("events")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -56,7 +56,7 @@ func (Authentication) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision sets up a.
|
// Provision sets up a.
|
||||||
func (a *Authentication) Provision(ctx caddy.Context) error {
|
func (a *Authentication) Provision(ctx caddy.Context) error {
|
||||||
a.logger = ctx.Logger(a)
|
a.logger = ctx.Logger()
|
||||||
a.Providers = make(map[string]Authenticator)
|
a.Providers = make(map[string]Authenticator)
|
||||||
mods, err := ctx.LoadModule(a, "ProvidersRaw")
|
mods, err := ctx.LoadModule(a, "ProvidersRaw")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -92,7 +92,7 @@ func (ScryptHash) CaddyModule() caddy.ModuleInfo {
|
||||||
// Provision sets up s.
|
// Provision sets up s.
|
||||||
func (s *ScryptHash) Provision(ctx caddy.Context) error {
|
func (s *ScryptHash) Provision(ctx caddy.Context) error {
|
||||||
s.SetDefaults()
|
s.SetDefaults()
|
||||||
ctx.Logger(s).Warn("use of 'scrypt' is deprecated, please use 'bcrypt' instead")
|
ctx.Logger().Warn("use of 'scrypt' is deprecated, please use 'bcrypt' instead")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -90,7 +90,7 @@ func (m *MatchExpression) UnmarshalJSON(data []byte) error {
|
||||||
|
|
||||||
// Provision sets ups m.
|
// Provision sets ups m.
|
||||||
func (m *MatchExpression) Provision(ctx caddy.Context) error {
|
func (m *MatchExpression) Provision(ctx caddy.Context) error {
|
||||||
m.log = ctx.Logger(m)
|
m.log = ctx.Logger()
|
||||||
|
|
||||||
// replace placeholders with a function call - this is just some
|
// replace placeholders with a function call - this is just some
|
||||||
// light (and possibly naïve) syntactic sugar
|
// light (and possibly naïve) syntactic sugar
|
||||||
|
|
|
@ -256,7 +256,7 @@ func celFileMatcherMacroExpander() parser.MacroExpander {
|
||||||
|
|
||||||
// Provision sets up m's defaults.
|
// Provision sets up m's defaults.
|
||||||
func (m *MatchFile) Provision(ctx caddy.Context) error {
|
func (m *MatchFile) Provision(ctx caddy.Context) error {
|
||||||
m.logger = ctx.Logger(m)
|
m.logger = ctx.Logger()
|
||||||
|
|
||||||
// establish the file system to use
|
// establish the file system to use
|
||||||
if len(m.FileSystemRaw) > 0 {
|
if len(m.FileSystemRaw) > 0 {
|
||||||
|
|
|
@ -167,7 +167,7 @@ func (FileServer) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision sets up the static files responder.
|
// Provision sets up the static files responder.
|
||||||
func (fsrv *FileServer) Provision(ctx caddy.Context) error {
|
func (fsrv *FileServer) Provision(ctx caddy.Context) error {
|
||||||
fsrv.logger = ctx.Logger(fsrv)
|
fsrv.logger = ctx.Logger()
|
||||||
|
|
||||||
// establish which file system (possibly a virtual one) we'll be using
|
// establish which file system (possibly a virtual one) we'll be using
|
||||||
if len(fsrv.FileSystemRaw) > 0 {
|
if len(fsrv.FileSystemRaw) > 0 {
|
||||||
|
|
|
@ -1326,7 +1326,7 @@ func (MatchRemoteIP) CELLibrary(ctx caddy.Context) (cel.Library, error) {
|
||||||
|
|
||||||
// Provision parses m's IP ranges, either from IP or CIDR expressions.
|
// Provision parses m's IP ranges, either from IP or CIDR expressions.
|
||||||
func (m *MatchRemoteIP) Provision(ctx caddy.Context) error {
|
func (m *MatchRemoteIP) Provision(ctx caddy.Context) error {
|
||||||
m.logger = ctx.Logger(m)
|
m.logger = ctx.Logger()
|
||||||
for _, str := range m.Ranges {
|
for _, str := range m.Ranges {
|
||||||
// Exclude the zone_id from the IP
|
// Exclude the zone_id from the IP
|
||||||
if strings.Contains(str, "%") {
|
if strings.Contains(str, "%") {
|
||||||
|
|
|
@ -61,7 +61,7 @@ func (Handler) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision sets up h.
|
// Provision sets up h.
|
||||||
func (h *Handler) Provision(ctx caddy.Context) error {
|
func (h *Handler) Provision(ctx caddy.Context) error {
|
||||||
h.logger = ctx.Logger(h)
|
h.logger = ctx.Logger()
|
||||||
if h.Headers != nil {
|
if h.Headers != nil {
|
||||||
err := h.Headers.Provision(ctx)
|
err := h.Headers.Provision(ctx)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -94,7 +94,7 @@ func (Transport) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision sets up t.
|
// Provision sets up t.
|
||||||
func (t *Transport) Provision(ctx caddy.Context) error {
|
func (t *Transport) Provision(ctx caddy.Context) error {
|
||||||
t.logger = ctx.Logger(t)
|
t.logger = ctx.Logger()
|
||||||
|
|
||||||
if t.Root == "" {
|
if t.Root == "" {
|
||||||
t.Root = "{http.vars.root}"
|
t.Root = "{http.vars.root}"
|
||||||
|
|
|
@ -195,7 +195,7 @@ func (h *HTTPTransport) NewTransport(caddyCtx caddy.Context) (*http.Transport, e
|
||||||
TCPConn: tcpConn,
|
TCPConn: tcpConn,
|
||||||
readTimeout: time.Duration(h.ReadTimeout),
|
readTimeout: time.Duration(h.ReadTimeout),
|
||||||
writeTimeout: time.Duration(h.WriteTimeout),
|
writeTimeout: time.Duration(h.WriteTimeout),
|
||||||
logger: caddyCtx.Logger(h),
|
logger: caddyCtx.Logger(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -217,7 +217,7 @@ func (h *Handler) Provision(ctx caddy.Context) error {
|
||||||
}
|
}
|
||||||
h.events = eventAppIface.(*caddyevents.App)
|
h.events = eventAppIface.(*caddyevents.App)
|
||||||
h.ctx = ctx
|
h.ctx = ctx
|
||||||
h.logger = ctx.Logger(h)
|
h.logger = ctx.Logger()
|
||||||
h.connections = make(map[io.ReadWriteCloser]openConnection)
|
h.connections = make(map[io.ReadWriteCloser]openConnection)
|
||||||
h.connectionsMu = new(sync.Mutex)
|
h.connectionsMu = new(sync.Mutex)
|
||||||
|
|
||||||
|
|
|
@ -76,7 +76,7 @@ func (SRVUpstreams) CaddyModule() caddy.ModuleInfo {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (su *SRVUpstreams) Provision(ctx caddy.Context) error {
|
func (su *SRVUpstreams) Provision(ctx caddy.Context) error {
|
||||||
su.logger = ctx.Logger(su)
|
su.logger = ctx.Logger()
|
||||||
if su.Refresh == 0 {
|
if su.Refresh == 0 {
|
||||||
su.Refresh = caddy.Duration(time.Minute)
|
su.Refresh = caddy.Duration(time.Minute)
|
||||||
}
|
}
|
||||||
|
@ -383,7 +383,7 @@ func (MultiUpstreams) CaddyModule() caddy.ModuleInfo {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (mu *MultiUpstreams) Provision(ctx caddy.Context) error {
|
func (mu *MultiUpstreams) Provision(ctx caddy.Context) error {
|
||||||
mu.logger = ctx.Logger(mu)
|
mu.logger = ctx.Logger()
|
||||||
|
|
||||||
if mu.SourcesRaw != nil {
|
if mu.SourcesRaw != nil {
|
||||||
mod, err := ctx.LoadModule(mu, "SourcesRaw")
|
mod, err := ctx.LoadModule(mu, "SourcesRaw")
|
||||||
|
|
|
@ -101,7 +101,7 @@ func (Rewrite) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision sets up rewr.
|
// Provision sets up rewr.
|
||||||
func (rewr *Rewrite) Provision(ctx caddy.Context) error {
|
func (rewr *Rewrite) Provision(ctx caddy.Context) error {
|
||||||
rewr.logger = ctx.Logger(rewr)
|
rewr.logger = ctx.Logger()
|
||||||
|
|
||||||
for i, rep := range rewr.PathRegexp {
|
for i, rep := range rewr.PathRegexp {
|
||||||
if rep.Find == "" {
|
if rep.Find == "" {
|
||||||
|
|
|
@ -42,7 +42,7 @@ func (Tracing) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision implements caddy.Provisioner.
|
// Provision implements caddy.Provisioner.
|
||||||
func (ot *Tracing) Provision(ctx caddy.Context) error {
|
func (ot *Tracing) Provision(ctx caddy.Context) error {
|
||||||
ot.logger = ctx.Logger(ot)
|
ot.logger = ctx.Logger()
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
ot.otel, err = newOpenTelemetryWrapper(ctx, ot.SpanName)
|
ot.otel, err = newOpenTelemetryWrapper(ctx, ot.SpanName)
|
||||||
|
@ -69,7 +69,6 @@ func (ot *Tracing) ServeHTTP(w http.ResponseWriter, r *http.Request, next caddyh
|
||||||
// tracing {
|
// tracing {
|
||||||
// [span <span_name>]
|
// [span <span_name>]
|
||||||
// }
|
// }
|
||||||
//
|
|
||||||
func (ot *Tracing) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
|
func (ot *Tracing) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
|
||||||
setParameter := func(d *caddyfile.Dispenser, val *string) error {
|
setParameter := func(d *caddyfile.Dispenser, val *string) error {
|
||||||
if d.NextArg() {
|
if d.NextArg() {
|
||||||
|
|
|
@ -87,7 +87,7 @@ func (Handler) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision sets up the ACME server handler.
|
// Provision sets up the ACME server handler.
|
||||||
func (ash *Handler) Provision(ctx caddy.Context) error {
|
func (ash *Handler) Provision(ctx caddy.Context) error {
|
||||||
ash.logger = ctx.Logger(ash)
|
ash.logger = ctx.Logger()
|
||||||
// set some defaults
|
// set some defaults
|
||||||
if ash.CA == "" {
|
if ash.CA == "" {
|
||||||
ash.CA = caddypki.DefaultCAID
|
ash.CA = caddypki.DefaultCAID
|
||||||
|
|
|
@ -47,7 +47,7 @@ func (adminAPI) CaddyModule() caddy.ModuleInfo {
|
||||||
// Provision sets up the adminAPI module.
|
// Provision sets up the adminAPI module.
|
||||||
func (a *adminAPI) Provision(ctx caddy.Context) error {
|
func (a *adminAPI) Provision(ctx caddy.Context) error {
|
||||||
a.ctx = ctx
|
a.ctx = ctx
|
||||||
a.log = ctx.Logger(a)
|
a.log = ctx.Logger(a) // TODO: passing in 'a' is a hack until the admin API is officially extensible (see #5032)
|
||||||
|
|
||||||
// First check if the PKI app was configured, because
|
// First check if the PKI app was configured, because
|
||||||
// a.ctx.App() has the side effect of instantiating
|
// a.ctx.App() has the side effect of instantiating
|
||||||
|
|
|
@ -54,7 +54,7 @@ func (PKI) CaddyModule() caddy.ModuleInfo {
|
||||||
// Provision sets up the configuration for the PKI app.
|
// Provision sets up the configuration for the PKI app.
|
||||||
func (p *PKI) Provision(ctx caddy.Context) error {
|
func (p *PKI) Provision(ctx caddy.Context) error {
|
||||||
p.ctx = ctx
|
p.ctx = ctx
|
||||||
p.log = ctx.Logger(p)
|
p.log = ctx.Logger()
|
||||||
|
|
||||||
for caID, ca := range p.CAs {
|
for caID, ca := range p.CAs {
|
||||||
err := ca.Provision(ctx, caID, p.log)
|
err := ca.Provision(ctx, caID, p.log)
|
||||||
|
|
|
@ -103,7 +103,7 @@ func (ACMEIssuer) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision sets up iss.
|
// Provision sets up iss.
|
||||||
func (iss *ACMEIssuer) Provision(ctx caddy.Context) error {
|
func (iss *ACMEIssuer) Provision(ctx caddy.Context) error {
|
||||||
iss.logger = ctx.Logger(iss)
|
iss.logger = ctx.Logger()
|
||||||
|
|
||||||
repl := caddy.NewReplacer()
|
repl := caddy.NewReplacer()
|
||||||
|
|
||||||
|
|
|
@ -43,7 +43,7 @@ func (Tailscale) CaddyModule() caddy.ModuleInfo {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ts *Tailscale) Provision(ctx caddy.Context) error {
|
func (ts *Tailscale) Provision(ctx caddy.Context) error {
|
||||||
ts.logger = ctx.Logger(ts)
|
ts.logger = ctx.Logger()
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -65,7 +65,7 @@ func (InternalIssuer) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision sets up the issuer.
|
// Provision sets up the issuer.
|
||||||
func (iss *InternalIssuer) Provision(ctx caddy.Context) error {
|
func (iss *InternalIssuer) Provision(ctx caddy.Context) error {
|
||||||
iss.logger = ctx.Logger(iss)
|
iss.logger = ctx.Logger()
|
||||||
|
|
||||||
// set some defaults
|
// set some defaults
|
||||||
if iss.CA == "" {
|
if iss.CA == "" {
|
||||||
|
@ -153,7 +153,6 @@ func (iss InternalIssuer) Issue(ctx context.Context, csr *x509.CertificateReques
|
||||||
// lifetime <duration>
|
// lifetime <duration>
|
||||||
// sign_with_root
|
// sign_with_root
|
||||||
// }
|
// }
|
||||||
//
|
|
||||||
func (iss *InternalIssuer) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
|
func (iss *InternalIssuer) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
|
||||||
for d.Next() {
|
for d.Next() {
|
||||||
for d.NextBlock(0) {
|
for d.NextBlock(0) {
|
||||||
|
|
|
@ -81,7 +81,7 @@ func (MatchRemoteIP) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision parses m's IP ranges, either from IP or CIDR expressions.
|
// Provision parses m's IP ranges, either from IP or CIDR expressions.
|
||||||
func (m *MatchRemoteIP) Provision(ctx caddy.Context) error {
|
func (m *MatchRemoteIP) Provision(ctx caddy.Context) error {
|
||||||
m.logger = ctx.Logger(m)
|
m.logger = ctx.Logger()
|
||||||
for _, str := range m.Ranges {
|
for _, str := range m.Ranges {
|
||||||
cidrs, err := m.parseIPRange(str)
|
cidrs, err := m.parseIPRange(str)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -94,7 +94,7 @@ func (t *TLS) Provision(ctx caddy.Context) error {
|
||||||
}
|
}
|
||||||
t.events = eventsAppIface.(*caddyevents.App)
|
t.events = eventsAppIface.(*caddyevents.App)
|
||||||
t.ctx = ctx
|
t.ctx = ctx
|
||||||
t.logger = ctx.Logger(t)
|
t.logger = ctx.Logger()
|
||||||
repl := caddy.NewReplacer()
|
repl := caddy.NewReplacer()
|
||||||
|
|
||||||
// set up a new certificate cache; this (re)loads all certificates
|
// set up a new certificate cache; this (re)loads all certificates
|
||||||
|
|
|
@ -66,7 +66,7 @@ func (*ZeroSSLIssuer) CaddyModule() caddy.ModuleInfo {
|
||||||
|
|
||||||
// Provision sets up iss.
|
// Provision sets up iss.
|
||||||
func (iss *ZeroSSLIssuer) Provision(ctx caddy.Context) error {
|
func (iss *ZeroSSLIssuer) Provision(ctx caddy.Context) error {
|
||||||
iss.logger = ctx.Logger(iss)
|
iss.logger = ctx.Logger()
|
||||||
if iss.ACMEIssuer == nil {
|
if iss.ACMEIssuer == nil {
|
||||||
iss.ACMEIssuer = new(ACMEIssuer)
|
iss.ACMEIssuer = new(ACMEIssuer)
|
||||||
}
|
}
|
||||||
|
|
|
@ -62,7 +62,7 @@ func (l *zapLogger) Println(v ...any) {
|
||||||
|
|
||||||
// Provision sets up m.
|
// Provision sets up m.
|
||||||
func (m *Metrics) Provision(ctx caddy.Context) error {
|
func (m *Metrics) Provision(ctx caddy.Context) error {
|
||||||
log := ctx.Logger(m)
|
log := ctx.Logger()
|
||||||
m.metricsHandler = createMetricsHandler(&zapLogger{log}, !m.DisableOpenMetrics)
|
m.metricsHandler = createMetricsHandler(&zapLogger{log}, !m.DisableOpenMetrics)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
@ -78,7 +78,6 @@ func parseCaddyfile(h httpcaddyfile.Helper) (caddyhttp.MiddlewareHandler, error)
|
||||||
// metrics [<matcher>] {
|
// metrics [<matcher>] {
|
||||||
// disable_openmetrics
|
// disable_openmetrics
|
||||||
// }
|
// }
|
||||||
//
|
|
||||||
func (m *Metrics) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
|
func (m *Metrics) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
|
||||||
for d.Next() {
|
for d.Next() {
|
||||||
args := d.RemainingArgs()
|
args := d.RemainingArgs()
|
||||||
|
|
Loading…
Reference in a new issue