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

feat!: Detect anomalous Datadog traces; upgrade to Python 3.11 #757

Merged
merged 2 commits into from
Aug 5, 2024

Commits on Aug 1, 2024

  1. feat: Detect and log anomalous traces in DatadogDiagnosticMiddleware

    Manual testing:
    
    1. Install in devstack, add middleware to lms/envs/devstack.py, and
       enable Waffle flag.
    2. Make some requests and observe lack of new logging.
    3. Add `self.dd_tracer.current_root_span().finish()` to start of
       `process_view` (faking an anomalous trace) and reinstall in devstack
    4. Make some more requests and observe log output like the following:
       `Anomalous Datadog local root span (duration already set): id = 66abf66b000000001168265a391d04a3; duration = 0.108 sec; worker age = 1.560 sec`
    timmc-edx committed Aug 1, 2024
    Configuration menu
    Copy the full SHA
    8e1ea7e View commit details
    Browse the repository at this point in the history

Commits on Aug 2, 2024

  1. feat!: Add tests for datadog diagnostics; minimum support Python 3.11

    - Install ddtrace at the test.in level
    - Add tests for new and existing middleware functionality
    - Test with Python 3.11, not 3.8. This isn't just because we're upgrading
      to 3.11 across our repos, but also because I ran into a really weird bug
      with ddtrace and/or jsonschema that only occurs with Python 3.8:
      DataDog/dd-trace-py#9950
    timmc-edx committed Aug 2, 2024
    Configuration menu
    Copy the full SHA
    f4a7f55 View commit details
    Browse the repository at this point in the history