(file string, event any)
| 338 | } |
| 339 | |
| 340 | func bufferEvent(file string, event any) { |
| 341 | data, err := json.Marshal(event) |
| 342 | if err != nil { |
| 343 | return |
| 344 | } |
| 345 | |
| 346 | err = os.WriteFile(file, data, 0o600) |
| 347 | if errors.Is(err, fs.ErrNotExist) { |
| 348 | // XDG specifies perms 0700. |
| 349 | if err := os.MkdirAll(filepath.Dir(file), 0o700); err != nil { |
| 350 | return |
| 351 | } |
| 352 | err = os.WriteFile(file, data, 0o600) |
| 353 | } |
| 354 | if err == nil { |
| 355 | needsFlush.Store(true) |
| 356 | } |
| 357 | } |
| 358 | |
| 359 | func newEventID() string { |
| 360 | // Generate event UUIDs the same way the Sentry SDK does: |
no test coverage detected