summaryrefslogtreecommitdiffstats
path: root/openstack/common
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2013-05-16 15:20:43 +0000
committerGerrit Code Review <review@openstack.org>2013-05-16 15:20:43 +0000
commita13c3d2d2dd14a9ab7fea5f17fdb4ee72323d17a (patch)
tree02cd84635fb7a05508c78564c705d1d701f067b0 /openstack/common
parent057ca90347b2285c69c8b548710ab876ee1d634d (diff)
parentb135234079d0b01791f71568d4515ee828a96686 (diff)
downloadoslo-a13c3d2d2dd14a9ab7fea5f17fdb4ee72323d17a.tar.gz
oslo-a13c3d2d2dd14a9ab7fea5f17fdb4ee72323d17a.tar.xz
oslo-a13c3d2d2dd14a9ab7fea5f17fdb4ee72323d17a.zip
Merge "Remove the notifier and its dependencies from log.py"
Diffstat (limited to 'openstack/common')
-rw-r--r--openstack/common/log.py18
-rw-r--r--openstack/common/log_handler.py31
2 files changed, 36 insertions, 13 deletions
diff --git a/openstack/common/log.py b/openstack/common/log.py
index d7ba467..d125d90 100644
--- a/openstack/common/log.py
+++ b/openstack/common/log.py
@@ -43,9 +43,9 @@ import traceback
from oslo.config import cfg
from openstack.common.gettextutils import _
+from openstack.common import importutils
from openstack.common import jsonutils
from openstack.common import local
-from openstack.common import notifier
_DEFAULT_LOG_DATE_FORMAT = "%Y-%m-%d %H:%M:%S"
@@ -322,17 +322,6 @@ class JSONFormatter(logging.Formatter):
return jsonutils.dumps(message)
-class PublishErrorsHandler(logging.Handler):
- def emit(self, record):
- if ('openstack.common.notifier.log_notifier' in
- CONF.notification_driver):
- return
- notifier.api.notify(None, 'error.publisher',
- 'error_notification',
- notifier.api.ERROR,
- dict(error=record.msg))
-
-
def _create_logging_excepthook(product_name):
def logging_excepthook(type, value, tb):
extra = {}
@@ -428,7 +417,10 @@ def _setup_logging_from_conf():
log_root.addHandler(streamlog)
if CONF.publish_errors:
- log_root.addHandler(PublishErrorsHandler(logging.ERROR))
+ handler = importutils.import_object(
+ "openstack.common.log_handler.PublishErrorsHandler",
+ logging.ERROR)
+ log_root.addHandler(handler)
datefmt = CONF.log_date_format
for handler in log_root.handlers:
diff --git a/openstack/common/log_handler.py b/openstack/common/log_handler.py
new file mode 100644
index 0000000..1f90948
--- /dev/null
+++ b/openstack/common/log_handler.py
@@ -0,0 +1,31 @@
+# vim: tabstop=4 shiftwidth=4 softtabstop=4
+
+# Copyright 2013 IBM Corp.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+import logging
+
+from openstack.common import notifier
+
+from oslo.config import cfg
+
+
+class PublishErrorsHandler(logging.Handler):
+ def emit(self, record):
+ if ('openstack.common.notifier.log_notifier' in
+ cfg.CONF.notification_driver):
+ return
+ notifier.api.notify(None, 'error.publisher',
+ 'error_notification',
+ notifier.api.ERROR,
+ dict(error=record.msg))