(v interface{})
| 134 | } |
| 135 | |
| 136 | func encodeJSON(v interface{}) []byte { |
| 137 | b, err := json.Marshal(v) |
| 138 | if err != nil { |
| 139 | return encode(M( |
| 140 | Error(xerrors.Errorf("failed to marshal to JSON: %w", err)), |
| 141 | F("type", reflect.TypeOf(v)), |
| 142 | F("value", fmt.Sprintf("%+v", v)), |
| 143 | )) |
| 144 | } |
| 145 | return b |
| 146 | } |
| 147 | |
| 148 | func errorChain(f xerrors.Formatter) []interface{} { |
| 149 | var errs []interface{} |