MCPcopy Create free account
hub / github.com/baidu/EasyFaaS / statisticsInfo

Function statisticsInfo

pkg/controller/rtctrl/statistics.go:55–86  ·  view source on GitHub ↗
(request *RequestInfo)

Source from the content-addressed store, hash-verified

53}
54
55func statisticsInfo(request *RequestInfo) *StatisticInfo {
56 if nil == request {
57 return nil
58 }
59 input := request.Input
60 funcname := ""
61 if nil != input.Configuration.FunctionName {
62 funcname = *(input.Configuration.FunctionName)
63 }
64 version := ""
65 if nil != input.Configuration.Version {
66 version = *(input.Configuration.Version)
67 }
68 now := time.Now().UnixNano()
69 statusCode := http.StatusExpectationFailed
70 if request.Status == StatusSuccess {
71 statusCode = http.StatusOK
72 } else if request.Status == StatusTimeout {
73 statusCode = http.StatusRequestTimeout
74 }
75 msg := StatisticInfo{
76 UserID: request.Input.User.ID,
77 Function: funcname,
78 Version: version,
79 StartTime: request.InvokeStartTimeMS,
80 Duration: float64(now-request.InvokeStartTimeNS) / float64(time.Millisecond),
81 MemoryUsed: request.MaxMemUsedBytes,
82 StatusCode: statusCode,
83 }
84
85 return &msg
86}

Callers 2

TestStatisticsInfoFunction · 0.85
InvokeFunctionMethod · 0.85

Calls

no outgoing calls

Tested by 1

TestStatisticsInfoFunction · 0.68