From 96604c797f8a7ad12f2df639783f36f6fdfdc0ef Mon Sep 17 00:00:00 2001 From: KevinBetterQ <1093850932@qq.com> Date: Thu, 27 Jun 2019 17:11:36 +0800 Subject: [PATCH] fix: fix removeImage metric logic Signed-off-by: KevinBetterQ <1093850932@qq.com> --- apis/server/image_bridge.go | 3 ++- test/api_image_metrics_test.go | 11 +++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/apis/server/image_bridge.go b/apis/server/image_bridge.go index bf9b6b29e..8ec98028d 100644 --- a/apis/server/image_bridge.go +++ b/apis/server/image_bridge.go @@ -131,7 +131,6 @@ func (s *Server) removeImage(ctx context.Context, rw http.ResponseWriter, req *h label := util_metrics.ActionDeleteLabel defer func(start time.Time) { - metrics.ImageActionsCounter.WithLabelValues(label).Inc() metrics.ImageActionsTimer.WithLabelValues(label).Observe(time.Since(start).Seconds()) }(time.Now()) @@ -153,10 +152,12 @@ func (s *Server) removeImage(ctx context.Context, rw http.ResponseWriter, req *h } if err := s.ImageMgr.RemoveImage(ctx, name, isForce); err != nil { + metrics.ImageActionsCounter.WithLabelValues(label).Inc() return err } metrics.ImageSuccessActionsCounter.WithLabelValues(label).Inc() + metrics.ImageActionsCounter.WithLabelValues(label).Inc() rw.WriteHeader(http.StatusNoContent) return nil } diff --git a/test/api_image_metrics_test.go b/test/api_image_metrics_test.go index d179e5327..1a661af5e 100644 --- a/test/api_image_metrics_test.go +++ b/test/api_image_metrics_test.go @@ -45,18 +45,25 @@ func (suite *APIImageMetricsSuite) checkAction(c *check.C, label string) { countBefore, countSuccessBefore := GetMetric(c, key, keySuccess) + countAdd := 0 switch label { case "pull": PullImage(c, helloworldImage) + countAdd = 1 case "delete": resp, err := request.Delete("/images/" + helloworldImage) c.Assert(err, check.IsNil) CheckRespStatus(c, resp, 204) + countAdd = 1 + case "delete_nonImage": + _, err := request.Delete("/images/" + "nonImage") + c.Assert(err, check.NotNil) + countAdd = 0 } count, successCount := GetMetric(c, key, keySuccess) - c.Assert(count, check.Equals, countBefore+1) - c.Assert(successCount, check.Equals, countSuccessBefore+1) + c.Assert(count, check.Equals, countBefore+countAdd) + c.Assert(successCount, check.Equals, countSuccessBefore+countAdd) }