MCPcopy Index your code
hub / github.com/jetify-com/devbox / restoreEvents

Function restoreEvents

internal/telemetry/telemetry.go:310–338  ·  view source on GitHub ↗
(dir string)

Source from the content-addressed store, hash-verified

308}
309
310func restoreEvents[E any](dir string) []E {
311 dirEntries, err := os.ReadDir(dir)
312 if err != nil {
313 return nil
314 }
315
316 var events []E
317 for _, entry := range dirEntries {
318 if !entry.Type().IsRegular() || filepath.Ext(entry.Name()) != ".json" {
319 continue
320 }
321
322 path := filepath.Join(dir, entry.Name())
323 data, err := os.ReadFile(path)
324 // Always delete the file so we don't end up with an infinitely growing
325 // backlog of errors.
326 _ = os.Remove(path)
327 if err != nil {
328 continue
329 }
330
331 var event E
332 if err := json.Unmarshal(data, &event); err != nil {
333 continue
334 }
335 events = append(events, event)
336 }
337 return events
338}
339
340func bufferEvent(file string, event any) {
341 data, err := json.Marshal(event)

Callers

nothing calls this directly

Calls 2

TypeMethod · 0.80
RemoveMethod · 0.45

Tested by

no test coverage detected