Add logging to export_import exceptions

remotes/origin/enhancement/email-actions
Jesús Espino 2015-08-06 17:11:15 +02:00
parent 65d1db1c33
commit 340f2442b3
2 changed files with 12 additions and 0 deletions

View File

@ -346,6 +346,11 @@ LOGGING = {
"level": "ERROR", "level": "ERROR",
"propagate": False, "propagate": False,
}, },
"taiga.export_import": {
"handlers": ["mail_admins", "console"],
"level": "ERROR",
"propagate": False,
},
"taiga": { "taiga": {
"handlers": ["console"], "handlers": ["console"],
"level": "DEBUG", "level": "DEBUG",

View File

@ -15,10 +15,13 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
import datetime import datetime
import logging
import sys
from django.core.files.storage import default_storage from django.core.files.storage import default_storage
from django.core.files.base import ContentFile from django.core.files.base import ContentFile
from django.utils import timezone from django.utils import timezone
from django.conf import settings from django.conf import settings
from django.utils.translation import ugettext as _ from django.utils.translation import ugettext as _
@ -30,6 +33,8 @@ from .service import project_to_dict
from .dump_service import dict_to_project from .dump_service import dict_to_project
from .renderers import ExportRenderer from .renderers import ExportRenderer
logger = logging.getLogger('taiga.export_import')
@app.task(bind=True) @app.task(bind=True)
def dump_project(self, user, project): def dump_project(self, user, project):
@ -52,6 +57,7 @@ def dump_project(self, user, project):
} }
email = mbuilder.export_error(user, ctx) email = mbuilder.export_error(user, ctx)
email.send() email.send()
logger.error('Error generating dump %s (by %s)', project.slug, user, exc_info=sys.exc_info())
return return
deletion_date = timezone.now() + datetime.timedelta(seconds=settings.EXPORTS_TTL) deletion_date = timezone.now() + datetime.timedelta(seconds=settings.EXPORTS_TTL)
@ -84,6 +90,7 @@ def load_project_dump(user, dump):
} }
email = mbuilder.import_error(user, ctx) email = mbuilder.import_error(user, ctx)
email.send() email.send()
logger.error('Error loading dump %s (by %s)', project.slug, user, exc_info=sys.exc_info())
return return
ctx = {"user": user, "project": project} ctx = {"user": user, "project": project}