Skip to content
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

DEPR and move code owner monitoring code with updates #784

Open
2 tasks
robrap opened this issue Aug 28, 2024 · 2 comments
Open
2 tasks

DEPR and move code owner monitoring code with updates #784

robrap opened this issue Aug 28, 2024 · 2 comments
Assignees

Comments

@robrap
Copy link
Contributor

robrap commented Aug 28, 2024

  • DEPR of code owner code should happen because this is likely used by 2U-only, so it is just the right thing to do.
  • Also, having 2U-only-code would allow us to refactor more easily:
    • We could drop theme. (e.g.code_owner and code_owner_squad would have the same value, and code_owner_theme would be dropped. In theory, we could also drop code_owner_squad, but that might force too much unnecessary work on other teams.
    • We could refactor how celery tasks get code_owner without having to support anything other than Datadog:

Implementation thoughts:

  • We should experiment with a replacement solution before creating a DEPR ticket, so we know if we have any blockers before we sign ourselves up.
  • CodeOwnerMonitoringMiddleware could no longer be added directly into edx-platform here.
    • We could try using edx-platform's mechanism for adding additional middleware, assuming it doesn't run too late. Note: we could experimentally set a temporary span tag and see how many spans get code_owner, but don't get our new test tag.
    • If this didn't work out, we could consider introducing an openedx-event from DeploymentMonitoringMiddleware that allows operators to add their own custom monitoring.
  • Could be a separate ticket, but we used to have a New Relic search script for alerts and dashboards. It would be nice to have the same for DD for this type of work, and other monitoring refactors that have come up, like service name changes.

ACs:

  • Code has been moved from edx-django-utils to edx-arch-experiments plugin, so it is no longer public.
  • Theme functionality is removed from the codebase, as it is no longer valuable.
@robrap robrap added this to Arch-BOM Aug 28, 2024
@robrap robrap moved this to Backlog in Arch-BOM Aug 28, 2024
@robrap
Copy link
Contributor Author

robrap commented Aug 28, 2024

Giving this a P3 because it is important, but it is not urgent.

@jristau1984 jristau1984 moved this from Backlog to Ready For Development in Arch-BOM Sep 9, 2024
@robrap robrap self-assigned this Oct 16, 2024
robrap added a commit that referenced this issue Oct 23, 2024
Initial rollout of moving code_owner monitoring code from
edx-django-utils to this plugin.

- Adds near duplicate of code owner middleware from
  edx-django-utils.
- Adds code owner for celery using Datadog span processing
  of celery.run spans.
- Uses temporary span tags names using `_2`, like
  `code_owner_2`, for rollout and comparison with the original span tags.

See #784
@jristau1984 jristau1984 moved this from In Progress to Blocked in Arch-BOM Oct 28, 2024
@robrap robrap moved this from Blocked to In Progress in Arch-BOM Nov 12, 2024
@robrap
Copy link
Contributor Author

robrap commented Nov 12, 2024

Presumably this was marked blocked while I was out. Marking in-progress again.

robrap added a commit that referenced this issue Nov 14, 2024
Initial rollout of moving code_owner monitoring code from
edx-django-utils to this plugin.

- Adds near duplicate of code owner middleware from
  edx-django-utils.
- Adds code owner for celery using Datadog span processing
  of celery.run spans.
- Uses temporary span tags names using `_2`, like
  `code_owner_2`, for rollout and comparison with the original span tags.

See #784
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress
Development

No branches or pull requests

1 participant