From 86197a258c92028c998068e10d99e5eb4ee5593e Mon Sep 17 00:00:00 2001 From: Cedric Charly Date: Sun, 21 May 2017 18:24:06 -0500 Subject: [PATCH] cmd/chihaya: log hook names on startup Replace logging memory addresses with actual hook names. Closes #317 --- cmd/chihaya/config.go | 16 ++++++++++++++-- cmd/chihaya/main.go | 4 ++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/cmd/chihaya/config.go b/cmd/chihaya/config.go index 4fb60e2..cb0ae85 100644 --- a/cmd/chihaya/config.go +++ b/cmd/chihaya/config.go @@ -21,6 +21,18 @@ type hookConfig struct { Config interface{} `yaml:"config"` } +type hookConfigs []hookConfig + +// Names returns all hook names listed in the configuration. +func (hookCfgs hookConfigs) Names() (hookNames []string) { + hookNames = make([]string, len(hookCfgs)) + for index, hookCfg := range hookCfgs { + hookNames[index] = hookCfg.Name + } + + return +} + // Config represents the configuration used for executing Chihaya. type Config struct { middleware.Config `yaml:",inline"` @@ -28,8 +40,8 @@ type Config struct { HTTPConfig httpfrontend.Config `yaml:"http"` UDPConfig udpfrontend.Config `yaml:"udp"` Storage memory.Config `yaml:"storage"` - PreHooks []hookConfig `yaml:"prehooks"` - PostHooks []hookConfig `yaml:"posthooks"` + PreHooks hookConfigs `yaml:"prehooks"` + PostHooks hookConfigs `yaml:"posthooks"` } // CreateHooks creates instances of Hooks for all of the PreHooks and PostHooks diff --git a/cmd/chihaya/main.go b/cmd/chihaya/main.go index 1310c8c..4e1a040 100644 --- a/cmd/chihaya/main.go +++ b/cmd/chihaya/main.go @@ -66,8 +66,8 @@ func (r *Run) Start(ps storage.PeerStore) error { return errors.New("failed to validate hook config: " + err.Error()) } log.WithFields(log.Fields{ - "preHooks": preHooks, - "postHooks": postHooks, + "preHooks": cfg.PreHooks.Names(), + "postHooks": cfg.PostHooks.Names(), }).Info("starting middleware") r.logic = middleware.NewLogic(cfg.Config, r.peerStore, preHooks, postHooks)