Skip to content

Commit

Permalink
Handle partial events synchronization (#811)
Browse files Browse the repository at this point in the history
handle partial events sync

corrected log messages
  • Loading branch information
jaroslaw-pieszka authored Jun 10, 2024
1 parent c7e2fdf commit e4b116b
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions internal/subaccountsync/cis_events.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,15 +34,16 @@ func (c *RateLimitedCisClient) FetchEventsWindow(fromActionTime int64) ([]Event,
cisResponse, err := c.fetchEventsPage(currentPage, fromActionTime)
if err != nil {
c.log.Error(fmt.Sprintf("while getting subaccount events for %d page: %v", currentPage, err))
return nil, err
c.log.Debug(fmt.Sprintf("Event window fetched partially - pages: %d out of %d, events: %d, from epoch: %d", currentPage, cisResponse.TotalPages, len(events), fromActionTime))
return events, err
}
events = append(events, cisResponse.Events...)
currentPage++
if cisResponse.TotalPages == currentPage {
break
}
}
c.log.Debug(fmt.Sprintf("Fetched event window - pages: %d, events: %d, from epoch: %d", currentPage, len(events), fromActionTime))
c.log.Debug(fmt.Sprintf("Event window fetched - pages: %d, events: %d, from epoch: %d", currentPage, len(events), fromActionTime))
return events, nil
}

Expand Down Expand Up @@ -78,16 +79,16 @@ func (c *RateLimitedCisClient) fetchEventsPage(page int, fromActionTime int64) (

func (c *RateLimitedCisClient) getEventsForSubaccounts(fromActionTime int64, logs slog.Logger, subaccountsMap subaccountsSetType) ([]Event, error) {
rawEvents, err := c.FetchEventsWindow(fromActionTime)
if err != nil {
logs.Error(fmt.Sprintf("while getting subaccount delete events: %s", err))
if err != nil && len(rawEvents) == 0 {
logs.Error(fmt.Sprintf("while getting events: %s", err))
return nil, err
}

// filter events to get only the ones in subaccounts map
filteredEventsFromCis := filterEvents(rawEvents, subaccountsMap)
logs.Info(fmt.Sprintf("Raw events: %d, filtered: %d", len(rawEvents), len(filteredEventsFromCis)))

return filteredEventsFromCis, nil
return filteredEventsFromCis, err
}

func filterEvents(rawEvents []Event, subaccounts subaccountsSetType) []Event {
Expand Down

0 comments on commit e4b116b

Please sign in to comment.