diff options
Diffstat (limited to 'pkg/server/hook/dump.go')
| -rw-r--r-- | pkg/server/hook/dump.go | 30 |
1 files changed, 11 insertions, 19 deletions
diff --git a/pkg/server/hook/dump.go b/pkg/server/hook/dump.go index 864443b..d871d63 100644 --- a/pkg/server/hook/dump.go +++ b/pkg/server/hook/dump.go @@ -7,28 +7,28 @@ import ( "os" "path" "time" + "tunnel/pkg/config" "tunnel/pkg/server/env" - "tunnel/pkg/server/opts" "tunnel/pkg/server/queue" ) const dumpDefaultFile = "/tmp/tunnel/dump" +type dumpHook struct { + File string + Time bool +} + type dump struct { f *os.File h *dumpHook } -type dumpHook struct { - file string - time bool -} - func (t *dump) write(s string, p []byte) error { var out bytes.Buffer - if t.h.time { + if t.h.Time { now := time.Now().Format(config.TimeMsFormat) fmt.Fprintln(&out, now, s, len(p)) } else { @@ -69,8 +69,8 @@ func (t *dump) Close() { } func (h *dumpHook) where(env env.Env) string { - if h.file != "" { - return h.file + if h.File != "" { + return h.File } if v := env.Value("dump.file"); v != "" { @@ -80,7 +80,7 @@ func (h *dumpHook) where(env env.Env) string { return dumpDefaultFile } -func (h *dumpHook) Open(env env.Env) (interface{}, error) { +func (h *dumpHook) New(env env.Env) (interface{}, error) { file := h.where(env) dir := path.Dir(file) @@ -102,14 +102,6 @@ func (h *dumpHook) Open(env env.Env) (interface{}, error) { return t, nil } -func newDumpHook(opts opts.Opts) (hook, error) { - h := &dumpHook{ - file: opts["file"], - time: opts.Bool("time"), - } - return h, nil -} - func init() { - register("dump", newDumpHook) + register("dump", dumpHook{}) } |
