Merge pull request #6865 from cpennington/add-memory-dump-signal
Add memory dump signal
This commit is contained in:
@@ -6,8 +6,10 @@ defuse_xml_libs()
|
||||
import contracts
|
||||
contracts.disable_all()
|
||||
|
||||
import os
|
||||
import openedx.core.operations
|
||||
openedx.core.operations.install_memory_dumper()
|
||||
|
||||
import os
|
||||
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "cms.envs.aws")
|
||||
|
||||
import cms.startup as startup
|
||||
|
||||
@@ -6,8 +6,10 @@ defuse_xml_libs()
|
||||
import contracts
|
||||
contracts.disable_all()
|
||||
|
||||
import os
|
||||
import openedx.core.operations
|
||||
openedx.core.operations.install_memory_dumper()
|
||||
|
||||
import os
|
||||
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.envs.aws")
|
||||
|
||||
import lms.startup as startup
|
||||
|
||||
17
openedx/core/operations.py
Normal file
17
openedx/core/operations.py
Normal file
@@ -0,0 +1,17 @@
|
||||
import os
|
||||
import signal
|
||||
import tempfile
|
||||
|
||||
from datetime import datetime
|
||||
from meliae import scanner
|
||||
|
||||
|
||||
def dump_memory(signum, frame):
|
||||
"""Dump memory stats for the current process to a temp directory. Uses the meliae output format."""
|
||||
scanner.dump_all_objects('{}/meliae.{}.{}.dump'.format(tempfile.gettempdir(), datetime.now().isoformat(), os.getpid()))
|
||||
|
||||
def install_memory_dumper(dump_signal=signal.SIGPROF):
|
||||
"""
|
||||
Install a signal handler on `signal` to dump memory stats for the current process.
|
||||
"""
|
||||
signal.signal(dump_signal, dump_memory)
|
||||
@@ -50,6 +50,9 @@ lazy==1.1
|
||||
lxml==3.3.6
|
||||
mako==0.9.1
|
||||
Markdown==2.2.1
|
||||
--allow-external meliae
|
||||
--allow-unverified meliae
|
||||
meliae==0.4.0
|
||||
mongoengine==0.7.10
|
||||
networkx==1.7
|
||||
nltk==2.0.4
|
||||
@@ -58,7 +61,6 @@ oauthlib==0.6.3
|
||||
paramiko==1.9.0
|
||||
path.py==3.0.1
|
||||
Pillow==2.7.0
|
||||
pip>=1.4
|
||||
polib==1.0.3
|
||||
pycrypto>=2.6
|
||||
pygments==2.0.1
|
||||
|
||||
@@ -7,3 +7,9 @@
|
||||
# Numpy and scipy can't be installed in the same pip run.
|
||||
# Install numpy before other things to help resolve the problem.
|
||||
numpy==1.6.2
|
||||
|
||||
# Needed to make sure that options in base.txt are allowed
|
||||
pip==6.0.7
|
||||
|
||||
# Needed for meliae
|
||||
Cython==0.21.2
|
||||
|
||||
Reference in New Issue
Block a user