From 0346dd8b6b4a8bb7e1ac0f507d77f9c6188bfbf5 Mon Sep 17 00:00:00 2001 From: simon987 Date: Mon, 14 Jan 2019 18:37:05 -0500 Subject: [PATCH] Logging config --- README.md | 5 +++++ api/log.go | 4 ++-- config.yml | 6 ++++++ config/config.go | 3 +++ test/api_git_test.go | 5 ----- test/common.go | 11 ++--------- test/config.yml | 5 ++++- 7 files changed, 22 insertions(+), 17 deletions(-) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..c6807ee --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +### Running tests +```bash +cd test/ +go test +``` \ No newline at end of file diff --git a/api/log.go b/api/log.go index 5d5a93d..ebbffed 100644 --- a/api/log.go +++ b/api/log.go @@ -4,6 +4,7 @@ import ( "errors" "github.com/Sirupsen/logrus" "github.com/valyala/fasthttp" + "src/task_tracker/config" "time" ) @@ -33,7 +34,7 @@ func LogRequest(h RequestHandler) fasthttp.RequestHandler { } func SetupLogger() { - logrus.SetLevel(logrus.TraceLevel) //todo: from conf + logrus.SetLevel(config.Cfg.LogLevel) } func parseLogEntry(r *Request) *LogEntry { @@ -88,4 +89,3 @@ func LogError(r *Request) { "scope": entry.Scope, }).WithTime(entry.Time()).Error(entry.Message) } - diff --git a/config.yml b/config.yml index 9868cab..3d85917 100644 --- a/config.yml +++ b/config.yml @@ -6,5 +6,11 @@ database: git: webhook_secret: "very_secret_secret" + # Github: sha1, Gogs: sha256 webhook_hash: "sha1" + # Github: 'X-Hub-Signature', Gogs: 'X-Gogs-Signature' webhook_sig_header: "X-Hub-Signature" + +log: + # panic, fatal, error, warn, info, debug, trace + level: "trace" diff --git a/config/config.go b/config/config.go index 80d46be..6025b1b 100644 --- a/config/config.go +++ b/config/config.go @@ -1,6 +1,7 @@ package config import ( + "github.com/Sirupsen/logrus" "github.com/spf13/viper" ) @@ -10,6 +11,7 @@ var Cfg struct { WebHookSecret []byte WebHookHash string WebHookSigHeader string + LogLevel logrus.Level } func SetupConfig() { @@ -27,4 +29,5 @@ func SetupConfig() { Cfg.WebHookSecret = []byte(viper.GetString("git.webhook_secret")) Cfg.WebHookHash = viper.GetString("git.webhook_hash") Cfg.WebHookSigHeader = viper.GetString("git.webhook_sig_header") + Cfg.LogLevel, _ = logrus.ParseLevel(viper.GetString("log.level")) } diff --git a/test/api_git_test.go b/test/api_git_test.go index 8ff6470..0051ae0 100644 --- a/test/api_git_test.go +++ b/test/api_git_test.go @@ -5,7 +5,6 @@ import ( "crypto" "crypto/hmac" "encoding/hex" - "fmt" "net/http" "src/task_tracker/api" "src/task_tracker/config" @@ -16,8 +15,6 @@ func TestWebHookNoSignature(t *testing.T) { r := Post("/git/receivehook", api.GitPayload{}) - fmt.Println(r.StatusCode) - if r.StatusCode != 403 { t.Error() } @@ -31,8 +28,6 @@ func TestWebHookInvalidSignature(t *testing.T) { client := http.Client{} r, _ := client.Do(req) - fmt.Println(r.StatusCode) - if r.StatusCode != 403 { t.Error() } diff --git a/test/common.go b/test/common.go index 8870c55..c14d7c3 100644 --- a/test/common.go +++ b/test/common.go @@ -3,7 +3,6 @@ package test import ( "bytes" "encoding/json" - "fmt" "io" "io/ioutil" "net/http" @@ -15,7 +14,7 @@ func Post(path string, x interface{}) *http.Response { body, err := json.Marshal(x) buf := bytes.NewBuffer(body) - r, err := http.Post("http://" + config.Cfg.ServerAddr + path, "application/json", buf) + r, err := http.Post("http://"+config.Cfg.ServerAddr+path, "application/json", buf) handleErr(err) return r @@ -28,18 +27,12 @@ func Get(path string) *http.Response { return r } - func handleErr(err error) { if err != nil { panic(err) } } -func Print(body io.ReadCloser) { - rawBody, _ := ioutil.ReadAll(body) - fmt.Println(string(rawBody)) -} - func GenericJson(body io.ReadCloser) map[string]interface{} { var obj map[string]interface{} @@ -50,4 +43,4 @@ func GenericJson(body io.ReadCloser) map[string]interface{} { handleErr(err) return obj -} \ No newline at end of file +} diff --git a/test/config.yml b/test/config.yml index ce8be95..4ad9164 100644 --- a/test/config.yml +++ b/test/config.yml @@ -2,9 +2,12 @@ server: address: "127.0.0.1:5001" database: - conn_str : "user=task_tracker dbname=task_tracker_test sslmode=disable" + conn_str: "user=task_tracker dbname=task_tracker_test sslmode=disable" git: webhook_secret: "very_secret_secret" webhook_hash: "sha1" webhook_sig_header: "X-Hub-Signature" + +log: + level: "trace" \ No newline at end of file