From a5ffc86eebc7619b15de3e2238245537739497fb Mon Sep 17 00:00:00 2001 From: Tim McCormack Date: Tue, 7 May 2024 10:39:33 -0400 Subject: [PATCH] docs: Expose telemetry backend requirements in readme (#411) Maybe formalize some of this in extras requirements later for better version management. --- edx_django_utils/monitoring/README.rst | 17 +++++++++++++++++ .../monitoring/internal/backends.py | 12 +----------- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/edx_django_utils/monitoring/README.rst b/edx_django_utils/monitoring/README.rst index 14d0937a..51e2a9c6 100644 --- a/edx_django_utils/monitoring/README.rst +++ b/edx_django_utils/monitoring/README.rst @@ -41,6 +41,23 @@ Feature support matrix for built-in telemetry backends: - ❌ - ❌ +Additional requirements for using these backends: + +- ``edx_django_utils.monitoring.NewRelicBackend``: + + - Install the ``newrelic`` Python package + - Initialize newrelic, either via the ``newrelic-admin run-program`` wrapper or ``newrelic.agent`` API calls during server startup + +- ``edx_django_utils.monitoring.OpenTelemetryBackend``: + + - Install the ``opentelemetry-api`` Python package + - Initialize opentelemetry, either via the ``opentelemetry-instrument`` wrapper or ``opentelemetry.instrumentation`` API calls during server startup + +- ``edx_django_utils.monitoring.DatadogBackend``: + + - Install the ``ddtrace`` Python package + - Initialize ddtrace, either via the ``ddtrace-run`` wrapper or ``ddtrace.auto`` API calls during server startup + Using Custom Attributes ----------------------- diff --git a/edx_django_utils/monitoring/internal/backends.py b/edx_django_utils/monitoring/internal/backends.py index a6190156..c982a3fb 100644 --- a/edx_django_utils/monitoring/internal/backends.py +++ b/edx_django_utils/monitoring/internal/backends.py @@ -55,7 +55,7 @@ class NewRelicBackend(TelemetryBackend): """ Send telemetry to New Relic. - https://docs.newrelic.com/docs/apm/agents/python-agent/python-agent-api/guide-using-python-agent-api/ + API reference: https://docs.newrelic.com/docs/apm/agents/python-agent/python-agent-api/guide-using-python-agent-api/ """ def __init__(self): if newrelic is None: @@ -82,11 +82,6 @@ class OpenTelemetryBackend(TelemetryBackend): """ Send telemetry via OpenTelemetry. - Requirements to use: - - - Install `opentelemetry-api` Python package - - Configure and initialize OpenTelemetry - API reference: https://opentelemetry-python.readthedocs.io/en/latest/ """ # pylint: disable=import-outside-toplevel @@ -108,11 +103,6 @@ class DatadogBackend(TelemetryBackend): """ Send telemetry to Datadog via ddtrace. - Requirements to use: - - - Install `ddtrace` Python package - - Initialize ddtrace, either via ddtrace-run or ddtrace.auto - API reference: https://ddtrace.readthedocs.io/en/stable/api.html """ # pylint: disable=import-outside-toplevel