Merge pull request #16437 from edx/jeskew/datadog_monitoring_to_appconfig
Move datadog/monitoring startup to AppConfig ready.
This commit is contained in:
@@ -966,7 +966,7 @@ INSTALLED_APPS = [
|
||||
'eventtracking.django.apps.EventTrackingConfig',
|
||||
|
||||
# Monitoring
|
||||
'openedx.core.djangoapps.datadog',
|
||||
'openedx.core.djangoapps.datadog.apps.DatadogConfig',
|
||||
|
||||
# For asset pipelining
|
||||
'edxmako.apps.EdxMakoConfig',
|
||||
@@ -1009,9 +1009,6 @@ INSTALLED_APPS = [
|
||||
# Signals
|
||||
'openedx.core.djangoapps.signals.apps.SignalConfig',
|
||||
|
||||
# Monitoring signals
|
||||
'openedx.core.djangoapps.monitoring',
|
||||
|
||||
# Course action state
|
||||
'course_action_state',
|
||||
|
||||
|
||||
@@ -2161,7 +2161,7 @@ INSTALLED_APPS = [
|
||||
'splash',
|
||||
|
||||
# Monitoring
|
||||
'openedx.core.djangoapps.datadog',
|
||||
'openedx.core.djangoapps.datadog.apps.DatadogConfig',
|
||||
|
||||
# User API
|
||||
'rest_framework',
|
||||
@@ -2202,9 +2202,6 @@ INSTALLED_APPS = [
|
||||
# Country embargo support
|
||||
'openedx.core.djangoapps.embargo',
|
||||
|
||||
# Monitoring functionality
|
||||
'openedx.core.djangoapps.monitoring',
|
||||
|
||||
# Course action state
|
||||
'course_action_state',
|
||||
|
||||
|
||||
32
openedx/core/djangoapps/datadog/apps.py
Normal file
32
openedx/core/djangoapps/datadog/apps.py
Normal file
@@ -0,0 +1,32 @@
|
||||
"""
|
||||
Configuration for datadog Django app
|
||||
"""
|
||||
from django.apps import AppConfig
|
||||
from django.conf import settings
|
||||
from dogapi import dog_http_api, dog_stats_api
|
||||
|
||||
|
||||
class DatadogConfig(AppConfig):
|
||||
"""
|
||||
Configuration class for datadog Django app
|
||||
"""
|
||||
name = 'openedx.core.djangoapps.datadog'
|
||||
verbose_name = "Datadog"
|
||||
|
||||
def ready(self):
|
||||
"""
|
||||
Initialize connection to datadog during django startup.
|
||||
|
||||
Configure using DATADOG dictionary in the django project settings.
|
||||
"""
|
||||
# By default use the statsd agent
|
||||
options = {'statsd': True}
|
||||
|
||||
if hasattr(settings, 'DATADOG'):
|
||||
options.update(settings.DATADOG)
|
||||
|
||||
# Not all arguments are documented.
|
||||
# Look at the source code for details.
|
||||
dog_stats_api.start(**options)
|
||||
|
||||
dog_http_api.api_key = options.get('api_key')
|
||||
@@ -1,27 +0,0 @@
|
||||
"""
|
||||
Start up initialization of datadog.
|
||||
"""
|
||||
from django.conf import settings
|
||||
from dogapi import dog_http_api, dog_stats_api
|
||||
|
||||
|
||||
def run():
|
||||
"""
|
||||
Initialize connection to datadog during django startup.
|
||||
|
||||
Can be configured using a dictionary named DATADOG in the django
|
||||
project settings.
|
||||
|
||||
"""
|
||||
|
||||
# By default use the statsd agent
|
||||
options = {'statsd': True}
|
||||
|
||||
if hasattr(settings, 'DATADOG'):
|
||||
options.update(settings.DATADOG)
|
||||
|
||||
# Not all arguments are documented.
|
||||
# Look at the source code for details.
|
||||
dog_stats_api.start(**options)
|
||||
|
||||
dog_http_api.api_key = options.get('api_key')
|
||||
@@ -1,6 +0,0 @@
|
||||
This djangoapp is incorrectly named 'monitoring'.
|
||||
|
||||
The name is related to old functionality that used to be a part of this app.
|
||||
|
||||
TODO: The current contents of this app should be joined with other generic
|
||||
platform utilities and renamed appropriately.
|
||||
@@ -1,5 +0,0 @@
|
||||
"""
|
||||
Registers signal handlers at startup.
|
||||
"""
|
||||
# pylint: disable=unused-import
|
||||
import openedx.core.djangoapps.monitoring.exceptions
|
||||
@@ -7,8 +7,15 @@ from django.apps import AppConfig
|
||||
|
||||
class UtilConfig(AppConfig):
|
||||
"""
|
||||
Let Django know that this is an app with management commands.
|
||||
Configuration class for the openedx.core.djangoapps.util Django application
|
||||
"""
|
||||
label = 'open_edx_util'
|
||||
name = 'openedx.core.djangoapps.util'
|
||||
verbose_name = 'Open edX Utilities'
|
||||
|
||||
def ready(self):
|
||||
"""
|
||||
Registers signal handlers at startup.
|
||||
"""
|
||||
# pylint: disable=unused-import
|
||||
import openedx.core.djangoapps.util.signals
|
||||
|
||||
Reference in New Issue
Block a user