(request *RequestInfo)
| 53 | } |
| 54 | |
| 55 | func 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 | } |
no outgoing calls