From c6fd43a964308c8ccad8f0afa6c641c7fcabdb80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ferdinand=20M=C3=BCtsch?= Date: Mon, 26 Apr 2021 21:26:47 +0200 Subject: [PATCH] chore: log requests from json response util method --- models/compat/wakatime/v1/summaries.go | 1 - routes/api/heartbeat.go | 2 +- routes/api/summary.go | 2 +- routes/compat/shields/v1/badge.go | 4 ++-- routes/compat/wakatime/v1/all_time.go | 2 +- routes/compat/wakatime/v1/stats.go | 2 +- routes/compat/wakatime/v1/summaries.go | 2 +- utils/http.go | 4 ++-- 8 files changed, 9 insertions(+), 10 deletions(-) diff --git a/models/compat/wakatime/v1/summaries.go b/models/compat/wakatime/v1/summaries.go index 23cf1d3..5342bbc 100644 --- a/models/compat/wakatime/v1/summaries.go +++ b/models/compat/wakatime/v1/summaries.go @@ -129,7 +129,6 @@ func newDataFrom(s *models.Summary) *SummariesData { defer wg.Done() for i, e := range s.Languages { data.Languages[i] = convertEntry(e, s.TotalTimeBy(models.SummaryLanguage)) - } }(data) diff --git a/routes/api/heartbeat.go b/routes/api/heartbeat.go index 40206b9..db35940 100644 --- a/routes/api/heartbeat.go +++ b/routes/api/heartbeat.go @@ -96,7 +96,7 @@ func (h *HeartbeatApiHandler) Post(w http.ResponseWriter, r *http.Request) { } } - utils.RespondJSON(w, http.StatusCreated, constructSuccessResponse(len(heartbeats))) + utils.RespondJSON(w, r, http.StatusCreated, constructSuccessResponse(len(heartbeats))) } // construct weird response format (see https://github.com/wakatime/wakatime/blob/2e636d389bf5da4e998e05d5285a96ce2c181e3d/wakatime/api.py#L288) diff --git a/routes/api/summary.go b/routes/api/summary.go index 70ee5b7..e0a24ae 100644 --- a/routes/api/summary.go +++ b/routes/api/summary.go @@ -51,5 +51,5 @@ func (h *SummaryApiHandler) Get(w http.ResponseWriter, r *http.Request) { return } - utils.RespondJSON(w, http.StatusOK, summary) + utils.RespondJSON(w, r, http.StatusOK, summary) } diff --git a/routes/compat/shields/v1/badge.go b/routes/compat/shields/v1/badge.go index 0fce5cb..f85f489 100644 --- a/routes/compat/shields/v1/badge.go +++ b/routes/compat/shields/v1/badge.go @@ -101,7 +101,7 @@ func (h *BadgeHandler) Get(w http.ResponseWriter, r *http.Request) { cacheKey := fmt.Sprintf("%s_%v_%s_%s", user.ID, *interval, filterEntity, filterKey) if cacheResult, ok := h.cache.Get(cacheKey); ok { - utils.RespondJSON(w, http.StatusOK, cacheResult.(*v1.BadgeData)) + utils.RespondJSON(w, r, http.StatusOK, cacheResult.(*v1.BadgeData)) return } @@ -114,7 +114,7 @@ func (h *BadgeHandler) Get(w http.ResponseWriter, r *http.Request) { vm := v1.NewBadgeDataFrom(summary, filters) h.cache.SetDefault(cacheKey, vm) - utils.RespondJSON(w, http.StatusOK, vm) + utils.RespondJSON(w, r, http.StatusOK, vm) } func (h *BadgeHandler) loadUserSummary(user *models.User, interval *models.IntervalKey) (*models.Summary, error, int) { diff --git a/routes/compat/wakatime/v1/all_time.go b/routes/compat/wakatime/v1/all_time.go index 4d0c0d0..8eb0dd7 100644 --- a/routes/compat/wakatime/v1/all_time.go +++ b/routes/compat/wakatime/v1/all_time.go @@ -64,7 +64,7 @@ func (h *AllTimeHandler) Get(w http.ResponseWriter, r *http.Request) { } vm := v1.NewAllTimeFrom(summary, models.NewFiltersWith(models.SummaryProject, values.Get("project"))) - utils.RespondJSON(w, http.StatusOK, vm) + utils.RespondJSON(w, r, http.StatusOK, vm) } func (h *AllTimeHandler) loadUserSummary(user *models.User) (*models.Summary, error, int) { diff --git a/routes/compat/wakatime/v1/stats.go b/routes/compat/wakatime/v1/stats.go index bdce385..ae75b89 100644 --- a/routes/compat/wakatime/v1/stats.go +++ b/routes/compat/wakatime/v1/stats.go @@ -103,7 +103,7 @@ func (h *StatsHandler) Get(w http.ResponseWriter, r *http.Request) { stats.Data.Machines = nil } - utils.RespondJSON(w, http.StatusOK, stats) + utils.RespondJSON(w, r, http.StatusOK, stats) } func (h *StatsHandler) loadUserSummary(user *models.User, start, end time.Time) (*models.Summary, error, int) { diff --git a/routes/compat/wakatime/v1/summaries.go b/routes/compat/wakatime/v1/summaries.go index bbfeabf..ed83c41 100644 --- a/routes/compat/wakatime/v1/summaries.go +++ b/routes/compat/wakatime/v1/summaries.go @@ -76,7 +76,7 @@ func (h *SummariesHandler) Get(w http.ResponseWriter, r *http.Request) { } vm := v1.NewSummariesFrom(summaries, filters) - utils.RespondJSON(w, http.StatusOK, vm) + utils.RespondJSON(w, r, http.StatusOK, vm) } func (h *SummariesHandler) loadUserSummaries(r *http.Request) ([]*models.Summary, error, int) { diff --git a/utils/http.go b/utils/http.go index 8197fb9..afbeb44 100644 --- a/utils/http.go +++ b/utils/http.go @@ -6,10 +6,10 @@ import ( "net/http" ) -func RespondJSON(w http.ResponseWriter, status int, object interface{}) { +func RespondJSON(w http.ResponseWriter, r *http.Request, status int, object interface{}) { w.Header().Set("Content-Type", "application/json") w.WriteHeader(status) if err := json.NewEncoder(w).Encode(object); err != nil { - config.Log().Error("error while writing json response: %v", err) + config.Log().Request(r).Error("error while writing json response: %v", err) } }