Skip to content

fix(uptime): ensure we don't count interval changes as missed checks #93441

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

klochek
Copy link
Contributor

@klochek klochek commented Jun 12, 2025

If a user changes the checkin interval, we might see this in uptime_consumer as a potential missed checkin. Add a key to redis that stores the last seen interval, and use that to compare with the interval from postgres. Note that we don't store the interval constantly, just in the case that we see a difference in interval, so we might miss an actual missed check if it's the first apparent missed check we've seen for a subscription.

@klochek klochek requested a review from a team as a code owner June 12, 2025 16:16
@github-actions github-actions bot added the Scope: Backend Automatically applied to PRs that change backend components label Jun 12, 2025
@klochek klochek merged commit 0d3dca4 into master Jun 12, 2025
61 checks passed
@klochek klochek deleted the christopherklochek/new-419-fix-false-positives-when-detecting-missing-checks-in-uptime branch June 12, 2025 16:37
vishnupsatish pushed a commit that referenced this pull request Jun 12, 2025
…93441)

If a user changes the checkin interval, we might see this in
uptime_consumer as a potential missed checkin. Add a key to redis that
stores the last seen interval, and use that to compare with the interval
from postgres. Note that we don't store the interval constantly, just in
the case that we see a difference in interval, so we might miss an
actual missed check if it's the first apparent missed check we've seen
for a subscription.
Copy link

sentry-io bot commented Jun 12, 2025

Suspect Issues

This pull request was deployed and Sentry observed the following issues:

  • ‼️ AssertionError: info('uptime.result_processor.num_missing_check', extra={'num_missed_checks': 1, 'guid': 'a1edef3cef0b4cec9ec33a343aaa598b', 'subscription_id': '4e5dd20c7e6249f99791c0018a897cd2', 'status': 'failure', 'status_reason': {'type': 'timeout', 'description': ... pytest.runtest.protocol tests/sentry/uptime/con... View Issue
  • ‼️ AssertionError: info('uptime.result_processor.num_missing_check', extra={'num_missed_checks': 1, 'guid': '779fb51ece024f2caaef4d521d76aea8', 'subscription_id': 'a1e2f53deb14483ba94e892fde6c5e01', 'status': 'failure', 'status_reason': {'type': 'timeout', 'description': ... pytest.runtest.protocol tests/sentry/uptime/con... View Issue

Did you find this useful? React with a 👍 or 👎

andrewshie-sentry pushed a commit that referenced this pull request Jun 19, 2025
…93441)

If a user changes the checkin interval, we might see this in
uptime_consumer as a potential missed checkin. Add a key to redis that
stores the last seen interval, and use that to compare with the interval
from postgres. Note that we don't store the interval constantly, just in
the case that we see a difference in interval, so we might miss an
actual missed check if it's the first apparent missed check we've seen
for a subscription.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Scope: Backend Automatically applied to PRs that change backend components
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants