Skip to content

Conversation

@ceorourke
Copy link
Member

@ceorourke ceorourke commented Nov 8, 2021

Some weekly reports are not getting sent to customers and this is an attempt to help the tasks run smoothly so that the reports send.

I had added some logging here and here that unfortunately wasn't very helpful, so I am hoping that adding acks_late and max_retries to the reports tasks will help.



@instrumented_task(name="sentry.tasks.reports.prepare_reports", queue="reports.prepare")
@retry()
Copy link
Member Author

@ceorourke ceorourke Nov 8, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Honestly I'd prefer to do one at a time so I can actually see what's needed if just one works, but given the week long turnaround with this I thought I'd just go ham. This article suggests it's okay to do: https://docs.celeryproject.org/en/stable/faq.html#faq-acks-late-vs-retry

but I'd be okay with doing just acks_late in this PR and adding retries later if that doesn't work.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You should include a max_retries for the instrumented_task decorator or celery will always retry which can amplify the impacts of an outage as tasks will fail, respawn and then fail in a loop. We often use 5 as our retry limit.

@ceorourke ceorourke requested review from a team and markstory November 8, 2021 21:19
@ceorourke ceorourke merged commit ca935bf into master Nov 9, 2021
@ceorourke ceorourke deleted the ceorourke/reports-late_acks branch November 9, 2021 17:23
@github-actions github-actions bot locked and limited conversation to collaborators Nov 25, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants