瀏覽代碼

[oozie] Log all caught naked "except:" blocks

Erick Tryzelaar 10 年之前
父節點
當前提交
2667702bdc

+ 1 - 1
apps/oozie/src/oozie/forms.py

@@ -290,7 +290,7 @@ class SubWorkflowForm(forms.ModelForm):
     try:
     try:
       return Workflow.objects.get(id=int(self.cleaned_data.get('sub_workflow')))
       return Workflow.objects.get(id=int(self.cleaned_data.get('sub_workflow')))
     except:
     except:
-      LOG.debug('The sub-workflow could not be found.', exc_info=True)
+      LOG.exception('The sub-workflow could not be found.')
       return None
       return None
 
 
 
 

+ 2 - 0
apps/oozie/src/oozie/importlib/bundles.py

@@ -113,6 +113,8 @@ def import_bundle_root(bundle, bundle_definition_root, metadata=None):
     bundle.schema_version = schema_version
     bundle.schema_version = schema_version
     bundle.save()
     bundle.save()
   except:
   except:
+    LOG.exception('failed to import bundle')
+
     # There was an error importing the bundle so delete every thing associated with it.
     # There was an error importing the bundle so delete every thing associated with it.
     bundle.delete(skip_trash=True)
     bundle.delete(skip_trash=True)
     raise
     raise

+ 2 - 0
apps/oozie/src/oozie/importlib/workflows.py

@@ -674,6 +674,8 @@ def import_workflow_root(workflow, workflow_definition_root, metadata=None, fs=N
     workflow.name = workflow_definition_root.get('name')
     workflow.name = workflow_definition_root.get('name')
     workflow.save()
     workflow.save()
   except:
   except:
+    LOG.exception('failed to import workflow root')
+
     workflow.delete(skip_trash=True)
     workflow.delete(skip_trash=True)
     raise
     raise
 
 

+ 2 - 1
apps/oozie/src/oozie/models.py

@@ -312,7 +312,8 @@ class WorkflowManager(models.Manager):
     try:
     try:
       workflow.coordinator_set.update(workflow=None) # In Django 1.3 could do ON DELETE set NULL
       workflow.coordinator_set.update(workflow=None) # In Django 1.3 could do ON DELETE set NULL
     except:
     except:
-      pass
+      LOG.exception('failed to destroy workflow')
+
     workflow.save()
     workflow.save()
     workflow.delete(skip_trash=True)
     workflow.delete(skip_trash=True)
 
 

+ 4 - 0
apps/oozie/src/oozie/templates/utils.inc.mako

@@ -23,6 +23,7 @@
 
 
 
 
 <%!
 <%!
+  import logging
   import posixpath
   import posixpath
   import time
   import time
 
 
@@ -32,6 +33,8 @@
   from desktop.lib.view_util import format_duration_in_millis
   from desktop.lib.view_util import format_duration_in_millis
   from hadoop.fs.hadoopfs import Hdfs
   from hadoop.fs.hadoopfs import Hdfs
   from liboozie.utils import format_time
   from liboozie.utils import format_time
+
+  LOG = logging.getLogger(__name__)
 %>
 %>
 
 
 
 
@@ -71,6 +74,7 @@
     try:
     try:
       return format_time(python_date)
       return format_time(python_date)
     except:
     except:
+      LOG.exception('failed to format time: %s' % python_date)
       return '%s %s' % (date(python_date), dtime(python_date).replace("p.m.","PM").replace("a.m.","AM"))
       return '%s %s' % (date(python_date), dtime(python_date).replace("p.m.","PM").replace("a.m.","AM"))
   %>
   %>
 </%def>
 </%def>

+ 5 - 4
apps/oozie/src/oozie/tests.py

@@ -2529,7 +2529,7 @@ class TestPermissions(OozieBase):
     try:
     try:
       self.wf.delete(skip_trash=True)
       self.wf.delete(skip_trash=True)
     except:
     except:
-      pass
+      LOG.exception('failed to tear down tests')
 
 
   def test_workflow_permissions(self):
   def test_workflow_permissions(self):
     raise SkipTest
     raise SkipTest
@@ -2946,7 +2946,7 @@ class TestEditorWithOozie(OozieBase):
     try:
     try:
       self.wf.delete(skip_trash=True)
       self.wf.delete(skip_trash=True)
     except:
     except:
-      pass
+      LOG.exception('failed to tear down tests')
 
 
 
 
   def test_create_workflow(self):
   def test_create_workflow(self):
@@ -3122,7 +3122,7 @@ class TestDashboardWithOozie(OozieBase):
     try:
     try:
       self.wf.delete(skip_trash=True)
       self.wf.delete(skip_trash=True)
     except:
     except:
-      pass
+      LOG.exception('failed to tear down tests')
 
 
   def test_submit_external_workflow(self):
   def test_submit_external_workflow(self):
     # Check popup and reading workflow.xml and job.properties
     # Check popup and reading workflow.xml and job.properties
@@ -3377,7 +3377,7 @@ class TestDashboard(OozieMockBase):
       self.c.get(reverse('oozie:manage_oozie_jobs', args=[MockOozieApi.COORDINATOR_IDS[0], 'kill']))
       self.c.get(reverse('oozie:manage_oozie_jobs', args=[MockOozieApi.COORDINATOR_IDS[0], 'kill']))
       assert False
       assert False
     except:
     except:
-      pass
+      LOG.exception('failed to get oozie job')
 
 
     response = self.c.post(reverse('oozie:manage_oozie_jobs', args=[MockOozieApi.COORDINATOR_IDS[0], 'kill']))
     response = self.c.post(reverse('oozie:manage_oozie_jobs', args=[MockOozieApi.COORDINATOR_IDS[0], 'kill']))
     data = json.loads(response.content)
     data = json.loads(response.content)
@@ -3537,6 +3537,7 @@ class TestDashboard(OozieMockBase):
       assert_true(response.context['workflow_graph'] is None)
       assert_true(response.context['workflow_graph'] is None)
       assert_equal(Document.objects.available_docs(Workflow, self.user).count(), workflow_count)
       assert_equal(Document.objects.available_docs(Workflow, self.user).count(), workflow_count)
     except:
     except:
+      LOG.exception('failed to test workflow status graph')
       finish()
       finish()
 
 
   def test_list_oozie_sla(self):
   def test_list_oozie_sla(self):

+ 2 - 1
apps/oozie/src/oozie/views/dashboard.py

@@ -1055,6 +1055,7 @@ def _submitted_manually(job, user):
   try:
   try:
     job = get_job(parent_id)
     job = get_job(parent_id)
   except:
   except:
+    LOG.exception('failed to get job')
     return True
     return True
 
 
-  return _submitted_manually(job, user)
+  return _submitted_manually(job, user)