refactor(agent): update logging message format in agent initialization, rename Start* to Init*

This commit is contained in:
yusing 2025-04-05 12:00:52 +08:00
parent 253e06923d
commit 73a5c57d67
3 changed files with 7 additions and 9 deletions

View file

@ -17,7 +17,6 @@ import (
"github.com/yusing/go-proxy/internal/logging" "github.com/yusing/go-proxy/internal/logging"
gphttp "github.com/yusing/go-proxy/internal/net/gphttp" gphttp "github.com/yusing/go-proxy/internal/net/gphttp"
"github.com/yusing/go-proxy/internal/net/types" "github.com/yusing/go-proxy/internal/net/types"
"github.com/yusing/go-proxy/internal/task"
"github.com/yusing/go-proxy/pkg" "github.com/yusing/go-proxy/pkg"
) )
@ -80,7 +79,7 @@ func checkVersion(a, b string) bool {
return withoutBuildTime(a) == withoutBuildTime(b) return withoutBuildTime(a) == withoutBuildTime(b)
} }
func (cfg *AgentConfig) StartWithCerts(parent task.Parent, ca, crt, key []byte) error { func (cfg *AgentConfig) InitWithCerts(ctx context.Context, ca, crt, key []byte) error {
clientCert, err := tls.X509KeyPair(crt, key) clientCert, err := tls.X509KeyPair(crt, key)
if err != nil { if err != nil {
return err return err
@ -102,7 +101,7 @@ func (cfg *AgentConfig) StartWithCerts(parent task.Parent, ca, crt, key []byte)
// create transport and http client // create transport and http client
cfg.httpClient = cfg.NewHTTPClient() cfg.httpClient = cfg.NewHTTPClient()
ctx, cancel := context.WithTimeout(parent.Context(), 5*time.Second) ctx, cancel := context.WithTimeout(ctx, 5*time.Second)
defer cancel() defer cancel()
// check agent version // check agent version
@ -125,12 +124,11 @@ func (cfg *AgentConfig) StartWithCerts(parent task.Parent, ca, crt, key []byte)
cfg.name = string(name) cfg.name = string(name)
cfg.l = logging.With().Str("agent", cfg.name).Logger() cfg.l = logging.With().Str("agent", cfg.name).Logger()
cfg.l.Info().Msg("agent initialized")
logging.Info().Msgf("agent %q initialized", cfg.name)
return nil return nil
} }
func (cfg *AgentConfig) Start(parent task.Parent) gperr.Error { func (cfg *AgentConfig) Init(ctx context.Context) gperr.Error {
filepath, ok := certs.AgentCertsFilepath(cfg.Addr) filepath, ok := certs.AgentCertsFilepath(cfg.Addr)
if !ok { if !ok {
return gperr.New("invalid agent host").Subject(cfg.Addr) return gperr.New("invalid agent host").Subject(cfg.Addr)
@ -146,7 +144,7 @@ func (cfg *AgentConfig) Start(parent task.Parent) gperr.Error {
return gperr.Wrap(err, "failed to extract agent certs") return gperr.Wrap(err, "failed to extract agent certs")
} }
return gperr.Wrap(cfg.StartWithCerts(parent, ca, crt, key)) return gperr.Wrap(cfg.InitWithCerts(ctx, ca, crt, key))
} }
func (cfg *AgentConfig) NewHTTPClient() *http.Client { func (cfg *AgentConfig) NewHTTPClient() *http.Client {

View file

@ -40,7 +40,7 @@ func (cfg *Config) VerifyNewAgent(host string, ca agent.PEMPair, client agent.PE
var agentCfg agent.AgentConfig var agentCfg agent.AgentConfig
agentCfg.Addr = host agentCfg.Addr = host
err := agentCfg.InitWithCerts(cfg.Task().Context(), ca.Cert, client.Cert, client.Key) err := agentCfg.InitWithCerts(cfg.task.Context(), ca.Cert, client.Cert, client.Key)
if err != nil { if err != nil {
return 0, gperr.Wrap(err, "failed to start agent") return 0, gperr.Wrap(err, "failed to start agent")
} }

View file

@ -280,7 +280,7 @@ func (cfg *Config) loadRouteProviders(providers *config.Providers) gperr.Error {
removeAllAgents() removeAllAgents()
for _, agent := range providers.Agents { for _, agent := range providers.Agents {
if err := agent.Start(cfg.task); err != nil { if err := agent.Init(cfg.task.Context()); err != nil {
errs.Add(err.Subject(agent.String())) errs.Add(err.Subject(agent.String()))
continue continue
} }