From 4b8f74d18c4cbc38c97a7c4826be0086b2ae0248 Mon Sep 17 00:00:00 2001 From: Mario Date: Mon, 9 May 2022 23:16:59 +0200 Subject: [PATCH] Improve tracer --- tracer/tracer.go | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 tracer/tracer.go diff --git a/tracer/tracer.go b/tracer/tracer.go new file mode 100644 index 0000000..48dae24 --- /dev/null +++ b/tracer/tracer.go @@ -0,0 +1,45 @@ +package tracer + +import ( + log "github.com/sirupsen/logrus" +) + +type Tracer struct { +} + +func Init() *Tracer { + return &Tracer{} +} + +func (tracer *Tracer) TraceEvent(event Event) { + log.WithFields(log.Fields{ + "status": event.Status.String(), + "event": event, + }).Info("New Event") +} + +type Event struct { + RemoteAddr string + Protocol string + Command string + Status Status + Msg string + ID string + Environ string + User string + Password string + Client string +} + +type Status int + +const ( + Start Status = iota + End + Stateless + Interaction +) + +func (status Status) String() string { + return [...]string{"Start", "End", "Stateless", "Interaction"}[status] +}