(result Result, authSnapshot *Auth)
| 59 | } |
| 60 | |
| 61 | func buildErrorEventPayload(result Result, authSnapshot *Auth) ([]byte, bool) { |
| 62 | if authSnapshot == nil || result.Success { |
| 63 | return nil, false |
| 64 | } |
| 65 | authSnapshot.EnsureIndex() |
| 66 | event := errorEvent{ |
| 67 | Timestamp: time.Now(), |
| 68 | Provider: strings.TrimSpace(result.Provider), |
| 69 | Model: strings.TrimSpace(result.Model), |
| 70 | AuthID: strings.TrimSpace(result.AuthID), |
| 71 | AuthIndex: strings.TrimSpace(authSnapshot.Index), |
| 72 | StatusCode: errorEventStatusCode(result.Error), |
| 73 | Body: errorEventBody(result.Error), |
| 74 | AuthStatus: buildErrorEventAuthStatus(result.Model, authSnapshot), |
| 75 | } |
| 76 | if result.Error != nil { |
| 77 | event.Code = strings.TrimSpace(result.Error.Code) |
| 78 | event.Retryable = result.Error.Retryable |
| 79 | } |
| 80 | payload, errMarshal := json.Marshal(event) |
| 81 | if errMarshal != nil { |
| 82 | return nil, false |
| 83 | } |
| 84 | return payload, true |
| 85 | } |
| 86 | |
| 87 | func buildErrorEventAuthStatus(model string, authSnapshot *Auth) errorEventAuthStatus { |
| 88 | status := errorEventAuthStatus{ |
no test coverage detected