X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/81ccd9264d0742ba1bf0b9dfbc31ff4f15929f3e..d0414ca727006b821b10b25d3920dc0f66400356:/services/keepstore/logging_router.go diff --git a/services/keepstore/logging_router.go b/services/keepstore/logging_router.go index bfd006ee8d..63c28a24b3 100644 --- a/services/keepstore/logging_router.go +++ b/services/keepstore/logging_router.go @@ -1,3 +1,7 @@ +// Copyright (C) The Arvados Authors. All rights reserved. +// +// SPDX-License-Identifier: AGPL-3.0 + package main // LoggingRESTRouter @@ -5,12 +9,12 @@ package main import ( "context" - "fmt" "net/http" "strings" "time" "git.curoverse.com/arvados.git/sdk/go/httpserver" + "git.curoverse.com/arvados.git/sdk/go/stats" log "github.com/Sirupsen/logrus" ) @@ -97,25 +101,11 @@ func (loggingRouter *LoggingRESTRouter) ServeHTTP(wrappedResp http.ResponseWrite } lgr.WithFields(log.Fields{ - "timeTotal": loggedDuration(tDone.Sub(tStart)), - "timeToStatus": loggedDuration(resp.sentHdr.Sub(tStart)), - "timeWriteBody": loggedDuration(tDone.Sub(resp.sentHdr)), + "timeTotal": stats.Duration(tDone.Sub(tStart)), + "timeToStatus": stats.Duration(resp.sentHdr.Sub(tStart)), + "timeWriteBody": stats.Duration(tDone.Sub(resp.sentHdr)), "respStatusCode": resp.Status, "respStatus": statusText, "respBytes": resp.Length, }).Info("response") } - -type loggedDuration time.Duration - -// MarshalJSON formats a duration as a number of seconds, using -// fixed-point notation with no more than 6 decimal places. -func (d loggedDuration) MarshalJSON() ([]byte, error) { - return []byte(d.String()), nil -} - -// String formats a duration as a number of seconds, using -// fixed-point notation with no more than 6 decimal places. -func (d loggedDuration) String() string { - return fmt.Sprintf("%.6f", time.Duration(d).Seconds()) -}