From 89d93dd8780bad6262ff955f11efddbb070724d4 Mon Sep 17 00:00:00 2001 From: yusing Date: Mon, 28 Apr 2025 00:48:20 +0800 Subject: [PATCH] chore: better error message --- internal/net/gphttp/middleware/middlewares.go | 6 +++--- internal/route/provider/docker.go | 7 +++++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/internal/net/gphttp/middleware/middlewares.go b/internal/net/gphttp/middleware/middlewares.go index 184de94..a59cda2 100644 --- a/internal/net/gphttp/middleware/middlewares.go +++ b/internal/net/gphttp/middleware/middlewares.go @@ -35,8 +35,8 @@ var allMiddlewares = map[string]*Middleware{ } var ( - ErrUnknownMiddleware = gperr.New("unknown middleware") - ErrDuplicatedMiddleware = gperr.New("duplicated middleware") + ErrUnknownMiddleware = gperr.New("unknown middleware") + ErrMiddlewareAlreadyExists = gperr.New("middleware with the same name already exists") ) func Get(name string) (*Middleware, Error) { @@ -69,7 +69,7 @@ func LoadComposeFiles() { for name, m := range mws { name = strutils.ToLowerNoSnake(name) if _, ok := allMiddlewares[name]; ok { - errs.Add(ErrDuplicatedMiddleware.Subject(name)) + errs.Add(ErrMiddlewareAlreadyExists.Subject(name)) continue } allMiddlewares[name] = m diff --git a/internal/route/provider/docker.go b/internal/route/provider/docker.go index 0483bbb..67c995a 100755 --- a/internal/route/provider/docker.go +++ b/internal/route/provider/docker.go @@ -80,8 +80,11 @@ func (p *DockerProvider) loadRoutesImpl() (route.Routes, gperr.Error) { errs.Add(err.Subject(container.ContainerName)) } for k, v := range newEntries { - if routes.Contains(k) { - errs.Addf("duplicated alias %s", k) + if conflict, ok := routes[k]; ok { + errs.Add(gperr.Multiline(). + Addf("route with alias %s already exists", k). + Addf("container %s", container.ContainerName). + Addf("conflicting container %s", conflict.Container.ContainerName)) } else { routes[k] = v }