summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nova/api/auth.py2
-rw-r--r--nova/api/ec2/__init__.py2
-rw-r--r--nova/api/ec2/apirequest.py2
-rw-r--r--nova/api/ec2/cloud.py2
-rw-r--r--nova/api/ec2/ec2utils.py2
-rw-r--r--nova/api/ec2/faults.py2
-rw-r--r--nova/api/metadata/base.py2
-rw-r--r--nova/api/metadata/handler.py2
-rw-r--r--nova/api/metadata/vendordata_json.py2
-rw-r--r--nova/api/openstack/__init__.py2
-rw-r--r--nova/api/openstack/common.py2
-rw-r--r--nova/api/openstack/compute/contrib/__init__.py2
-rw-r--r--nova/api/openstack/compute/contrib/admin_actions.py2
-rw-r--r--nova/api/openstack/compute/contrib/assisted_volume_snapshots.py2
-rw-r--r--nova/api/openstack/compute/contrib/attach_interfaces.py2
-rw-r--r--nova/api/openstack/compute/contrib/baremetal_nodes.py2
-rw-r--r--nova/api/openstack/compute/contrib/floating_ips.py2
-rw-r--r--nova/api/openstack/compute/contrib/hosts.py2
-rw-r--r--nova/api/openstack/compute/contrib/multinic.py2
-rw-r--r--nova/api/openstack/compute/contrib/os_tenant_networks.py3
-rw-r--r--nova/api/openstack/compute/contrib/security_groups.py2
-rw-r--r--nova/api/openstack/compute/contrib/server_external_events.py2
-rw-r--r--nova/api/openstack/compute/contrib/server_groups.py2
-rw-r--r--nova/api/openstack/compute/contrib/server_usage.py3
-rw-r--r--nova/api/openstack/compute/contrib/volumes.py2
-rw-r--r--nova/api/openstack/compute/extensions.py2
-rw-r--r--nova/api/openstack/compute/plugins/__init__.py2
-rw-r--r--nova/api/openstack/compute/plugins/v3/assisted_volume_snapshots.py2
-rw-r--r--nova/api/openstack/compute/plugins/v3/extension_info.py2
-rw-r--r--nova/api/openstack/compute/plugins/v3/floating_ips.py2
-rw-r--r--nova/api/openstack/compute/plugins/v3/hosts.py2
-rw-r--r--nova/api/openstack/compute/plugins/v3/security_groups.py2
-rw-r--r--nova/api/openstack/compute/plugins/v3/server_external_events.py2
-rw-r--r--nova/api/openstack/compute/plugins/v3/server_groups.py2
-rw-r--r--nova/api/openstack/compute/plugins/v3/servers.py2
-rw-r--r--nova/api/openstack/compute/plugins/v3/tenant_networks.py2
-rw-r--r--nova/api/openstack/compute/servers.py2
-rw-r--r--nova/api/openstack/compute/views/servers.py2
-rw-r--r--nova/api/openstack/extensions.py2
-rw-r--r--nova/api/openstack/urlmap.py2
-rw-r--r--nova/api/openstack/wsgi.py2
-rw-r--r--nova/api/validator.py3
-rw-r--r--nova/block_device.py2
-rw-r--r--nova/cells/filters/__init__.py3
-rw-r--r--nova/cells/filters/image_properties.py3
-rw-r--r--nova/cells/filters/target_cell.py3
-rw-r--r--nova/cells/manager.py2
-rw-r--r--nova/cells/messaging.py3
-rw-r--r--nova/cells/rpcapi.py2
-rw-r--r--nova/cells/scheduler.py2
-rw-r--r--nova/cells/state.py2
-rw-r--r--nova/cells/weights/mute_child.py2
-rw-r--r--nova/cloudpipe/pipelib.py2
-rw-r--r--nova/cmd/all.py4
-rw-r--r--nova/cmd/api.py4
-rw-r--r--nova/cmd/api_ec2.py4
-rw-r--r--nova/cmd/api_metadata.py4
-rw-r--r--nova/cmd/api_os_compute.py4
-rw-r--r--nova/cmd/baseproxy.py2
-rw-r--r--nova/cmd/cells.py4
-rw-r--r--nova/cmd/cert.py4
-rw-r--r--nova/cmd/compute.py4
-rw-r--r--nova/cmd/conductor.py4
-rw-r--r--nova/cmd/console.py4
-rw-r--r--nova/cmd/consoleauth.py4
-rw-r--r--nova/cmd/dhcpbridge.py4
-rw-r--r--nova/cmd/manage.py4
-rw-r--r--nova/cmd/network.py4
-rw-r--r--nova/cmd/objectstore.py5
-rw-r--r--nova/cmd/scheduler.py4
-rw-r--r--nova/cmd/xvpvncproxy.py5
-rw-r--r--nova/compute/api.py18
-rw-r--r--nova/compute/claims.py4
-rw-r--r--nova/compute/flavors.py2
-rw-r--r--nova/compute/manager.py4
-rw-r--r--nova/compute/monitors/__init__.py2
-rw-r--r--nova/compute/monitors/virt/cpu_monitor.py2
-rw-r--r--nova/compute/resource_tracker.py2
-rw-r--r--nova/compute/resources/__init__.py2
-rw-r--r--nova/compute/resources/vcpu.py3
-rw-r--r--nova/compute/rpcapi.py2
-rw-r--r--nova/compute/utils.py2
-rw-r--r--nova/conductor/api.py2
-rw-r--r--nova/conductor/manager.py2
-rw-r--r--nova/conductor/tasks/live_migrate.py2
-rw-r--r--nova/config.py3
-rw-r--r--nova/console/manager.py2
-rw-r--r--nova/console/serial.py2
-rw-r--r--nova/console/vmrc_manager.py2
-rw-r--r--nova/console/websocketproxy.py2
-rw-r--r--nova/console/xvp.py2
-rw-r--r--nova/consoleauth/manager.py2
-rw-r--r--nova/context.py2
-rw-r--r--nova/crypto.py2
-rw-r--r--nova/db/api.py2
-rw-r--r--nova/db/sqlalchemy/api.py2
-rw-r--r--nova/db/sqlalchemy/migrate_repo/versions/216_havana.py2
-rw-r--r--nova/db/sqlalchemy/migrate_repo/versions/234_add_expire_reservations_index.py2
-rw-r--r--nova/db/sqlalchemy/migrate_repo/versions/248_add_expire_reservations_index.py2
-rw-r--r--nova/db/sqlalchemy/migrate_repo/versions/267_instance_uuid_non_nullable.py2
-rw-r--r--nova/db/sqlalchemy/migration.py2
-rw-r--r--nova/db/sqlalchemy/utils.py2
-rw-r--r--nova/debugger.py2
-rw-r--r--nova/exception.py2
-rw-r--r--nova/filters.py3
-rw-r--r--nova/hooks.py2
-rw-r--r--nova/image/download/__init__.py3
-rw-r--r--nova/image/download/file.py3
-rw-r--r--nova/image/glance.py2
-rw-r--r--nova/image/s3.py2
-rw-r--r--nova/keymgr/barbican.py2
-rw-r--r--nova/keymgr/mock_key_mgr.py3
-rw-r--r--nova/keymgr/single_key_mgr.py2
-rw-r--r--nova/manager.py2
-rw-r--r--nova/network/api.py2
-rw-r--r--nova/network/base_api.py2
-rw-r--r--nova/network/driver.py2
-rw-r--r--nova/network/floating_ips.py2
-rw-r--r--nova/network/l3.py3
-rw-r--r--nova/network/ldapdns.py2
-rw-r--r--nova/network/linux_net.py2
-rw-r--r--nova/network/manager.py2
-rw-r--r--nova/network/minidns.py2
-rw-r--r--nova/network/neutronv2/api.py2
-rw-r--r--nova/network/security_group/neutron_driver.py2
-rw-r--r--nova/notifications.py2
-rw-r--r--nova/objects/base.py2
-rw-r--r--nova/objects/block_device.py3
-rw-r--r--nova/objects/instance.py2
-rw-r--r--nova/objects/instance_fault.py3
-rw-r--r--nova/objects/instance_info_cache.py3
-rw-r--r--nova/objects/pci_device.py2
-rw-r--r--nova/objects/service.py3
-rw-r--r--nova/openstack/common/cliutils.py4
-rw-r--r--nova/openstack/common/log.py718
-rw-r--r--nova/pci/manager.py3
-rw-r--r--nova/pci/request.py2
-rw-r--r--nova/pci/stats.py3
-rw-r--r--nova/pci/utils.py3
-rw-r--r--nova/pci/whitelist.py2
-rw-r--r--nova/quota.py2
-rw-r--r--nova/scheduler/client/report.py2
-rw-r--r--nova/scheduler/filter_scheduler.py2
-rw-r--r--nova/scheduler/filters/affinity_filter.py2
-rw-r--r--nova/scheduler/filters/aggregate_image_properties_isolation.py2
-rw-r--r--nova/scheduler/filters/aggregate_instance_extra_specs.py3
-rw-r--r--nova/scheduler/filters/aggregate_multitenancy_isolation.py3
-rw-r--r--nova/scheduler/filters/availability_zone_filter.py2
-rw-r--r--nova/scheduler/filters/compute_capabilities_filter.py2
-rw-r--r--nova/scheduler/filters/compute_filter.py2
-rw-r--r--nova/scheduler/filters/core_filter.py2
-rw-r--r--nova/scheduler/filters/disk_filter.py2
-rw-r--r--nova/scheduler/filters/exact_core_filter.py2
-rw-r--r--nova/scheduler/filters/exact_disk_filter.py3
-rw-r--r--nova/scheduler/filters/exact_ram_filter.py3
-rw-r--r--nova/scheduler/filters/image_props_filter.py3
-rw-r--r--nova/scheduler/filters/io_ops_filter.py2
-rw-r--r--nova/scheduler/filters/metrics_filter.py2
-rw-r--r--nova/scheduler/filters/num_instances_filter.py2
-rw-r--r--nova/scheduler/filters/pci_passthrough_filter.py3
-rw-r--r--nova/scheduler/filters/ram_filter.py2
-rw-r--r--nova/scheduler/filters/retry_filter.py3
-rw-r--r--nova/scheduler/filters/trusted_filter.py2
-rw-r--r--nova/scheduler/filters/utils.py3
-rw-r--r--nova/scheduler/host_manager.py8
-rw-r--r--nova/scheduler/ironic_host_manager.py2
-rw-r--r--nova/scheduler/manager.py2
-rw-r--r--nova/scheduler/scheduler_options.py2
-rw-r--r--nova/scheduler/utils.py2
-rw-r--r--nova/service.py2
-rw-r--r--nova/servicegroup/api.py2
-rw-r--r--nova/servicegroup/drivers/db.py2
-rw-r--r--nova/servicegroup/drivers/mc.py2
-rw-r--r--nova/servicegroup/drivers/zk.py2
-rw-r--r--nova/storage/linuxscsi.py2
-rw-r--r--nova/test.py13
-rw-r--r--nova/tests/fixtures.py20
-rw-r--r--nova/tests/functional/api/client.py2
-rw-r--r--nova/tests/functional/integrated_helpers.py2
-rw-r--r--nova/tests/functional/test_api_samples.py2
-rw-r--r--nova/tests/functional/test_extensions.py2
-rw-r--r--nova/tests/functional/test_login.py2
-rw-r--r--nova/tests/functional/test_servers.py2
-rw-r--r--nova/tests/unit/api/ec2/test_cloud.py2
-rw-r--r--nova/tests/unit/compute/test_compute.py2
-rw-r--r--nova/tests/unit/db/test_migrations.py3
-rw-r--r--nova/tests/unit/fake_processutils.py3
-rw-r--r--nova/tests/unit/fake_volume.py2
-rw-r--r--nova/tests/unit/image/fake.py2
-rw-r--r--nova/tests/unit/network/test_linux_net.py2
-rw-r--r--nova/tests/unit/network/test_manager.py2
-rw-r--r--nova/tests/unit/objects/test_objects.py2
-rw-r--r--nova/tests/unit/test_fixtures.py2
-rw-r--r--nova/tests/unit/test_hacking.py3
-rw-r--r--nova/tests/unit/test_linuxscsi.py2
-rw-r--r--nova/tests/unit/test_test.py2
-rw-r--r--nova/tests/unit/virt/libvirt/test_imagecache.py5
-rw-r--r--nova/tests/unit/virt/libvirt/test_rbd.py2
-rw-r--r--nova/tests/unit/virt/test_virt_drivers.py2
-rw-r--r--nova/tests/unit/virt/vmwareapi/fake.py2
-rw-r--r--nova/tests/unit/virt/xenapi/image/test_glance.py2
-rw-r--r--nova/tests/unit/virt/xenapi/test_xenapi.py2
-rw-r--r--nova/utils.py2
-rw-r--r--nova/version.py2
-rw-r--r--nova/virt/block_device.py2
-rw-r--r--nova/virt/configdrive.py2
-rw-r--r--nova/virt/disk/api.py2
-rw-r--r--nova/virt/disk/mount/api.py2
-rw-r--r--nova/virt/disk/mount/loop.py3
-rw-r--r--nova/virt/disk/mount/nbd.py2
-rw-r--r--nova/virt/disk/vfs/api.py6
-rw-r--r--nova/virt/disk/vfs/guestfs.py2
-rw-r--r--nova/virt/disk/vfs/localfs.py2
-rw-r--r--nova/virt/driver.py2
-rw-r--r--nova/virt/fake.py2
-rw-r--r--nova/virt/firewall.py2
-rw-r--r--nova/virt/hardware.py2
-rw-r--r--nova/virt/hyperv/basevolumeutils.py3
-rw-r--r--nova/virt/hyperv/driver.py3
-rw-r--r--nova/virt/hyperv/hostops.py2
-rw-r--r--nova/virt/hyperv/imagecache.py2
-rw-r--r--nova/virt/hyperv/ioutils.py2
-rw-r--r--nova/virt/hyperv/livemigrationops.py2
-rw-r--r--nova/virt/hyperv/livemigrationutils.py3
-rw-r--r--nova/virt/hyperv/migrationops.py2
-rw-r--r--nova/virt/hyperv/pathutils.py2
-rw-r--r--nova/virt/hyperv/rdpconsoleops.py3
-rw-r--r--nova/virt/hyperv/snapshotops.py2
-rw-r--r--nova/virt/hyperv/utilsfactory.py2
-rw-r--r--nova/virt/hyperv/vif.py2
-rw-r--r--nova/virt/hyperv/vmops.py2
-rw-r--r--nova/virt/hyperv/vmutils.py2
-rw-r--r--nova/virt/hyperv/vmutilsv2.py2
-rw-r--r--nova/virt/hyperv/volumeops.py2
-rw-r--r--nova/virt/hyperv/volumeutils.py2
-rw-r--r--nova/virt/hyperv/volumeutilsv2.py2
-rw-r--r--nova/virt/images.py2
-rw-r--r--nova/virt/ironic/client_wrapper.py2
-rw-r--r--nova/virt/ironic/driver.py7
-rw-r--r--nova/virt/libvirt/config.py2
-rw-r--r--nova/virt/libvirt/driver.py2
-rw-r--r--nova/virt/libvirt/firewall.py2
-rw-r--r--nova/virt/libvirt/host.py2
-rw-r--r--nova/virt/libvirt/imagebackend.py2
-rw-r--r--nova/virt/libvirt/imagecache.py2
-rw-r--r--nova/virt/libvirt/lvm.py2
-rw-r--r--nova/virt/libvirt/quobyte.py2
-rw-r--r--nova/virt/libvirt/rbd_utils.py2
-rw-r--r--nova/virt/libvirt/remotefs.py2
-rw-r--r--nova/virt/libvirt/utils.py2
-rw-r--r--nova/virt/libvirt/vif.py2
-rw-r--r--nova/virt/libvirt/volume.py2
-rw-r--r--nova/virt/storage_users.py2
-rw-r--r--nova/virt/vmwareapi/driver.py2
-rw-r--r--nova/virt/vmwareapi/ds_util.py3
-rw-r--r--nova/virt/vmwareapi/imagecache.py2
-rw-r--r--nova/virt/vmwareapi/images.py2
-rw-r--r--nova/virt/vmwareapi/io_util.py2
-rw-r--r--nova/virt/vmwareapi/network_util.py2
-rw-r--r--nova/virt/vmwareapi/vif.py2
-rw-r--r--nova/virt/vmwareapi/vim_util.py2
-rw-r--r--nova/virt/vmwareapi/vm_util.py2
-rw-r--r--nova/virt/vmwareapi/vmops.py2
-rw-r--r--nova/virt/vmwareapi/volumeops.py2
-rw-r--r--nova/virt/xenapi/agent.py2
-rw-r--r--nova/virt/xenapi/client/session.py2
-rw-r--r--nova/virt/xenapi/driver.py2
-rw-r--r--nova/virt/xenapi/fake.py2
-rw-r--r--nova/virt/xenapi/firewall.py2
-rw-r--r--nova/virt/xenapi/host.py2
-rw-r--r--nova/virt/xenapi/image/bittorrent.py2
-rw-r--r--nova/virt/xenapi/image/glance.py2
-rw-r--r--nova/virt/xenapi/pool.py2
-rw-r--r--nova/virt/xenapi/vm_utils.py2
-rw-r--r--nova/virt/xenapi/vmops.py2
-rw-r--r--nova/virt/xenapi/volume_utils.py2
-rw-r--r--nova/virt/xenapi/volumeops.py2
-rw-r--r--nova/vnc/xvp_proxy.py2
-rw-r--r--nova/volume/cinder.py2
-rw-r--r--nova/volume/encryptors/__init__.py2
-rw-r--r--nova/volume/encryptors/base.py2
-rw-r--r--nova/volume/encryptors/cryptsetup.py3
-rw-r--r--nova/volume/encryptors/luks.py2
-rw-r--r--nova/volume/encryptors/nop.py2
-rw-r--r--nova/wsgi.py5
-rw-r--r--openstack-common.conf2
-rw-r--r--requirements.txt1
287 files changed, 376 insertions, 1060 deletions
diff --git a/nova/api/auth.py b/nova/api/auth.py
index ae90a54465..33613e107b 100644
--- a/nova/api/auth.py
+++ b/nova/api/auth.py
@@ -17,6 +17,7 @@ Common Auth Middleware.
"""
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_middleware import request_id
from oslo_serialization import jsonutils
import webob.dec
@@ -24,7 +25,6 @@ import webob.exc
from nova import context
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova import wsgi
diff --git a/nova/api/ec2/__init__.py b/nova/api/ec2/__init__.py
index 94a669f9bd..4e9b1a1b8d 100644
--- a/nova/api/ec2/__init__.py
+++ b/nova/api/ec2/__init__.py
@@ -22,6 +22,7 @@ import hashlib
from oslo_config import cfg
from oslo_context import context as common_context
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import importutils
from oslo_utils import netutils
@@ -42,7 +43,6 @@ from nova.i18n import _
from nova.i18n import _LE
from nova.i18n import _LI
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.openstack.common import memorycache
from nova import wsgi
diff --git a/nova/api/ec2/apirequest.py b/nova/api/ec2/apirequest.py
index c65dfcd994..3251a590f9 100644
--- a/nova/api/ec2/apirequest.py
+++ b/nova/api/ec2/apirequest.py
@@ -23,12 +23,12 @@ import datetime
from xml.dom import minidom
from lxml import etree
+from oslo_log import log as logging
from oslo_utils import encodeutils
import six
from nova.api.ec2 import ec2utils
from nova import exception
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/api/ec2/cloud.py b/nova/api/ec2/cloud.py
index 0c2899ca4b..037317ed1b 100644
--- a/nova/api/ec2/cloud.py
+++ b/nova/api/ec2/cloud.py
@@ -24,6 +24,7 @@ import base64
import time
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import timeutils
from nova.api.ec2 import ec2utils
@@ -46,7 +47,6 @@ from nova import network
from nova.network.security_group import neutron_driver
from nova.network.security_group import openstack_driver
from nova import objects
-from nova.openstack.common import log as logging
from nova import quota
from nova import servicegroup
from nova import utils
diff --git a/nova/api/ec2/ec2utils.py b/nova/api/ec2/ec2utils.py
index a2c7a52c4e..03383f4eda 100644
--- a/nova/api/ec2/ec2utils.py
+++ b/nova/api/ec2/ec2utils.py
@@ -17,6 +17,7 @@
import functools
import re
+from oslo_log import log as logging
from oslo_utils import timeutils
from nova import context
@@ -26,7 +27,6 @@ from nova.i18n import _LI
from nova.network import model as network_model
from nova import objects
from nova.objects import base as obj_base
-from nova.openstack.common import log as logging
from nova.openstack.common import memorycache
from nova.openstack.common import uuidutils
diff --git a/nova/api/ec2/faults.py b/nova/api/ec2/faults.py
index 552e13f95b..c9ca2a4ecf 100644
--- a/nova/api/ec2/faults.py
+++ b/nova/api/ec2/faults.py
@@ -11,12 +11,12 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
import webob.dec
import webob.exc
import nova.api.ec2
from nova import context
-from nova.openstack.common import log as logging
from nova import utils
CONF = cfg.CONF
diff --git a/nova/api/metadata/base.py b/nova/api/metadata/base.py
index 61160a74d4..86fed82ba8 100644
--- a/nova/api/metadata/base.py
+++ b/nova/api/metadata/base.py
@@ -21,6 +21,7 @@ import os
import posixpath
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import importutils
from oslo_utils import timeutils
@@ -34,7 +35,6 @@ from nova import context
from nova import network
from nova import objects
from nova.objects import base as obj_base
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt import netutils
diff --git a/nova/api/metadata/handler.py b/nova/api/metadata/handler.py
index 34ddfbdcb9..ff2e684bbc 100644
--- a/nova/api/metadata/handler.py
+++ b/nova/api/metadata/handler.py
@@ -20,6 +20,7 @@ import hmac
import os
from oslo_config import cfg
+from oslo_log import log as logging
import six
import webob.dec
import webob.exc
@@ -30,7 +31,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LE
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.openstack.common import memorycache
from nova import utils
from nova import wsgi
diff --git a/nova/api/metadata/vendordata_json.py b/nova/api/metadata/vendordata_json.py
index 765a23197d..f22496d2ac 100644
--- a/nova/api/metadata/vendordata_json.py
+++ b/nova/api/metadata/vendordata_json.py
@@ -18,11 +18,11 @@
import errno
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from nova.api.metadata import base
from nova.i18n import _LW
-from nova.openstack.common import log as logging
file_opt = cfg.StrOpt('vendordata_jsonfile_path',
help='File to load JSON formatted vendor data from')
diff --git a/nova/api/openstack/__init__.py b/nova/api/openstack/__init__.py
index 61267325c6..dd1f840220 100644
--- a/nova/api/openstack/__init__.py
+++ b/nova/api/openstack/__init__.py
@@ -19,6 +19,7 @@ WSGI middleware for OpenStack API controllers.
"""
from oslo_config import cfg
+from oslo_log import log as logging
import routes
import stevedore
import webob.dec
@@ -34,7 +35,6 @@ from nova.i18n import _LI
from nova.i18n import _LW
from nova.i18n import translate
from nova import notifications
-from nova.openstack.common import log as logging
from nova import utils
from nova import wsgi as base_wsgi
diff --git a/nova/api/openstack/common.py b/nova/api/openstack/common.py
index 3f58010504..9e77f6bca3 100644
--- a/nova/api/openstack/common.py
+++ b/nova/api/openstack/common.py
@@ -20,6 +20,7 @@ import os
import re
from oslo_config import cfg
+from oslo_log import log as logging
import six.moves.urllib.parse as urlparse
import webob
from webob import exc
@@ -31,7 +32,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LE
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova import quota
osapi_opts = [
diff --git a/nova/api/openstack/compute/contrib/__init__.py b/nova/api/openstack/compute/contrib/__init__.py
index a604694055..d97057ef3c 100644
--- a/nova/api/openstack/compute/contrib/__init__.py
+++ b/nova/api/openstack/compute/contrib/__init__.py
@@ -20,9 +20,9 @@ It can't be called 'extensions' because that causes namespacing problems.
"""
from oslo_config import cfg
+from oslo_log import log as logging
from nova.api.openstack import extensions
-from nova.openstack.common import log as logging
ext_opts = [
cfg.ListOpt('osapi_compute_ext_list',
diff --git a/nova/api/openstack/compute/contrib/admin_actions.py b/nova/api/openstack/compute/contrib/admin_actions.py
index 027bc54b8c..8a397d1b02 100644
--- a/nova/api/openstack/compute/contrib/admin_actions.py
+++ b/nova/api/openstack/compute/contrib/admin_actions.py
@@ -15,6 +15,7 @@
import os.path
import traceback
+from oslo_log import log as logging
from oslo_utils import strutils
import six
import webob
@@ -28,7 +29,6 @@ from nova.compute import vm_states
from nova import exception
from nova.i18n import _
from nova.i18n import _LE
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/compute/contrib/assisted_volume_snapshots.py b/nova/api/openstack/compute/contrib/assisted_volume_snapshots.py
index 2df4cd4e2a..73f965f13d 100644
--- a/nova/api/openstack/compute/contrib/assisted_volume_snapshots.py
+++ b/nova/api/openstack/compute/contrib/assisted_volume_snapshots.py
@@ -12,6 +12,7 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
from oslo_serialization import jsonutils
import six
import webob
@@ -21,7 +22,6 @@ from nova.api.openstack import wsgi
from nova import compute
from nova import exception
from nova.i18n import _LI
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/compute/contrib/attach_interfaces.py b/nova/api/openstack/compute/contrib/attach_interfaces.py
index b16d830b2a..4e9fb642e3 100644
--- a/nova/api/openstack/compute/contrib/attach_interfaces.py
+++ b/nova/api/openstack/compute/contrib/attach_interfaces.py
@@ -16,6 +16,7 @@
"""The instance interfaces extension."""
import netaddr
+from oslo_log import log as logging
import six
import webob
from webob import exc
@@ -27,7 +28,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LI
from nova import network
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/compute/contrib/baremetal_nodes.py b/nova/api/openstack/compute/contrib/baremetal_nodes.py
index 1c1969b4ca..7377f6bc3a 100644
--- a/nova/api/openstack/compute/contrib/baremetal_nodes.py
+++ b/nova/api/openstack/compute/contrib/baremetal_nodes.py
@@ -16,13 +16,13 @@
"""The bare-metal admin extension with Ironic Proxy."""
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import importutils
import webob
from nova.api.openstack import extensions
from nova.api.openstack import wsgi
from nova.i18n import _
-from nova.openstack.common import log as logging
ironic_client = importutils.try_import('ironicclient.client')
diff --git a/nova/api/openstack/compute/contrib/floating_ips.py b/nova/api/openstack/compute/contrib/floating_ips.py
index 499cee42a8..a411b1a37d 100644
--- a/nova/api/openstack/compute/contrib/floating_ips.py
+++ b/nova/api/openstack/compute/contrib/floating_ips.py
@@ -15,6 +15,7 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
import webob
from nova.api.openstack import common
@@ -26,7 +27,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LW
from nova import network
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
diff --git a/nova/api/openstack/compute/contrib/hosts.py b/nova/api/openstack/compute/contrib/hosts.py
index 46a17728d5..47930eecc8 100644
--- a/nova/api/openstack/compute/contrib/hosts.py
+++ b/nova/api/openstack/compute/contrib/hosts.py
@@ -15,6 +15,7 @@
"""The hosts admin extension."""
+from oslo_log import log as logging
import webob.exc
from nova.api.openstack import extensions
@@ -23,7 +24,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LI
from nova import objects
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
authorize = extensions.extension_authorizer('compute', 'hosts')
diff --git a/nova/api/openstack/compute/contrib/multinic.py b/nova/api/openstack/compute/contrib/multinic.py
index 0682e3d4ca..9e7af76800 100644
--- a/nova/api/openstack/compute/contrib/multinic.py
+++ b/nova/api/openstack/compute/contrib/multinic.py
@@ -15,6 +15,7 @@
"""The multinic extension."""
+from oslo_log import log as logging
import webob
from webob import exc
@@ -25,7 +26,6 @@ from nova import compute
from nova import exception
from nova.i18n import _
from nova.i18n import _LE
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/compute/contrib/os_tenant_networks.py b/nova/api/openstack/compute/contrib/os_tenant_networks.py
index 6d1e63a88d..ab1ef15324 100644
--- a/nova/api/openstack/compute/contrib/os_tenant_networks.py
+++ b/nova/api/openstack/compute/contrib/os_tenant_networks.py
@@ -13,10 +13,10 @@
# License for the specific language governing permissions and limitations
# under the License.
-
import netaddr
import netaddr.core as netexc
from oslo_config import cfg
+from oslo_log import log as logging
import six
import webob
from webob import exc
@@ -27,7 +27,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LE
import nova.network
-from nova.openstack.common import log as logging
from nova import quota
diff --git a/nova/api/openstack/compute/contrib/security_groups.py b/nova/api/openstack/compute/contrib/security_groups.py
index 04ed6f86fd..a00f63bdde 100644
--- a/nova/api/openstack/compute/contrib/security_groups.py
+++ b/nova/api/openstack/compute/contrib/security_groups.py
@@ -19,6 +19,7 @@
import contextlib
from xml.dom import minidom
+from oslo_log import log as logging
from oslo_serialization import jsonutils
import six
import webob
@@ -31,7 +32,6 @@ from nova import compute
from nova import exception
from nova.i18n import _
from nova.network.security_group import openstack_driver
-from nova.openstack.common import log as logging
from nova.virt import netutils
diff --git a/nova/api/openstack/compute/contrib/server_external_events.py b/nova/api/openstack/compute/contrib/server_external_events.py
index d6b4183942..e9f85b794b 100644
--- a/nova/api/openstack/compute/contrib/server_external_events.py
+++ b/nova/api/openstack/compute/contrib/server_external_events.py
@@ -12,6 +12,7 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
import webob
from nova.api.openstack import extensions
@@ -22,7 +23,6 @@ from nova.i18n import _
from nova.i18n import _LI
from nova import objects
from nova.objects import external_event as external_event_obj
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/compute/contrib/server_groups.py b/nova/api/openstack/compute/contrib/server_groups.py
index 04c5f66d3d..df82094cfa 100644
--- a/nova/api/openstack/compute/contrib/server_groups.py
+++ b/nova/api/openstack/compute/contrib/server_groups.py
@@ -15,6 +15,7 @@
"""The Server Group API Extension."""
+from oslo_log import log as logging
import webob
from webob import exc
@@ -25,7 +26,6 @@ import nova.exception
from nova.i18n import _
from nova.i18n import _LE
from nova import objects
-from nova.openstack.common import log as logging
from nova import utils
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/compute/contrib/server_usage.py b/nova/api/openstack/compute/contrib/server_usage.py
index 4f3e45acbc..5c1b47a00d 100644
--- a/nova/api/openstack/compute/contrib/server_usage.py
+++ b/nova/api/openstack/compute/contrib/server_usage.py
@@ -12,10 +12,11 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
+
from nova.api.openstack import extensions
from nova.api.openstack import wsgi
from nova import compute
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
authorize = extensions.soft_extension_authorizer('compute', 'server_usage')
diff --git a/nova/api/openstack/compute/contrib/volumes.py b/nova/api/openstack/compute/contrib/volumes.py
index 5c7a734df0..6006842d33 100644
--- a/nova/api/openstack/compute/contrib/volumes.py
+++ b/nova/api/openstack/compute/contrib/volumes.py
@@ -15,6 +15,7 @@
"""The volumes extension."""
+from oslo_log import log as logging
from oslo_utils import strutils
import webob
from webob import exc
@@ -27,7 +28,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LI
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova import volume
diff --git a/nova/api/openstack/compute/extensions.py b/nova/api/openstack/compute/extensions.py
index 2f48277f60..a924d1b1bf 100644
--- a/nova/api/openstack/compute/extensions.py
+++ b/nova/api/openstack/compute/extensions.py
@@ -14,9 +14,9 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from nova.api.openstack import extensions as base_extensions
-from nova.openstack.common import log as logging
ext_opts = [
cfg.MultiStrOpt('osapi_compute_extension',
diff --git a/nova/api/openstack/compute/plugins/__init__.py b/nova/api/openstack/compute/plugins/__init__.py
index a8907da477..0a84c839c7 100644
--- a/nova/api/openstack/compute/plugins/__init__.py
+++ b/nova/api/openstack/compute/plugins/__init__.py
@@ -12,10 +12,10 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _LE
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/compute/plugins/v3/assisted_volume_snapshots.py b/nova/api/openstack/compute/plugins/v3/assisted_volume_snapshots.py
index 3f8deff7ac..f643a73c66 100644
--- a/nova/api/openstack/compute/plugins/v3/assisted_volume_snapshots.py
+++ b/nova/api/openstack/compute/plugins/v3/assisted_volume_snapshots.py
@@ -16,6 +16,7 @@
"""The Assisted volume snapshots extension."""
+from oslo_log import log as logging
from oslo_serialization import jsonutils
import six
from webob import exc
@@ -27,7 +28,6 @@ from nova.api import validation
from nova import compute
from nova import exception
from nova.i18n import _LI
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/compute/plugins/v3/extension_info.py b/nova/api/openstack/compute/plugins/v3/extension_info.py
index 736a8e1c4d..3854bdb95d 100644
--- a/nova/api/openstack/compute/plugins/v3/extension_info.py
+++ b/nova/api/openstack/compute/plugins/v3/extension_info.py
@@ -14,11 +14,11 @@
import copy
+from oslo_log import log as logging
import webob.exc
from nova.api.openstack import extensions
from nova.api.openstack import wsgi
-from nova.openstack.common import log as logging
ALIAS = 'extensions'
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/compute/plugins/v3/floating_ips.py b/nova/api/openstack/compute/plugins/v3/floating_ips.py
index 8fb8bde3f5..be3e4a7716 100644
--- a/nova/api/openstack/compute/plugins/v3/floating_ips.py
+++ b/nova/api/openstack/compute/plugins/v3/floating_ips.py
@@ -15,6 +15,7 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
import webob
from nova.api.openstack import common
@@ -28,7 +29,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LW
from nova import network
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
diff --git a/nova/api/openstack/compute/plugins/v3/hosts.py b/nova/api/openstack/compute/plugins/v3/hosts.py
index e64335dcce..d6c2923de1 100644
--- a/nova/api/openstack/compute/plugins/v3/hosts.py
+++ b/nova/api/openstack/compute/plugins/v3/hosts.py
@@ -15,6 +15,7 @@
"""The hosts admin extension."""
+from oslo_log import log as logging
import webob.exc
from nova.api.openstack.compute.schemas.v3 import hosts
@@ -26,7 +27,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LI
from nova import objects
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
ALIAS = 'os-hosts'
diff --git a/nova/api/openstack/compute/plugins/v3/security_groups.py b/nova/api/openstack/compute/plugins/v3/security_groups.py
index ef7e05634a..0f495d4eed 100644
--- a/nova/api/openstack/compute/plugins/v3/security_groups.py
+++ b/nova/api/openstack/compute/plugins/v3/security_groups.py
@@ -15,6 +15,7 @@
# under the License.
"""The security groups extension."""
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from webob import exc
@@ -27,7 +28,6 @@ from nova import compute
from nova import exception
from nova.i18n import _
from nova.network.security_group import openstack_driver
-from nova.openstack.common import log as logging
from nova.virt import netutils
diff --git a/nova/api/openstack/compute/plugins/v3/server_external_events.py b/nova/api/openstack/compute/plugins/v3/server_external_events.py
index a3ebecdbff..438b185508 100644
--- a/nova/api/openstack/compute/plugins/v3/server_external_events.py
+++ b/nova/api/openstack/compute/plugins/v3/server_external_events.py
@@ -12,6 +12,7 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
import webob
from nova.api.openstack.compute.schemas.v3 import server_external_events
@@ -23,7 +24,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LI
from nova import objects
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/compute/plugins/v3/server_groups.py b/nova/api/openstack/compute/plugins/v3/server_groups.py
index 50b0c49cef..58c55df42b 100644
--- a/nova/api/openstack/compute/plugins/v3/server_groups.py
+++ b/nova/api/openstack/compute/plugins/v3/server_groups.py
@@ -15,6 +15,7 @@
"""The Server Group API Extension."""
+from oslo_log import log as logging
import webob
from webob import exc
@@ -27,7 +28,6 @@ import nova.exception
from nova.i18n import _
from nova.i18n import _LE
from nova import objects
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/compute/plugins/v3/servers.py b/nova/api/openstack/compute/plugins/v3/servers.py
index dae7d3f361..4cdea9f305 100644
--- a/nova/api/openstack/compute/plugins/v3/servers.py
+++ b/nova/api/openstack/compute/plugins/v3/servers.py
@@ -18,6 +18,7 @@ import base64
import re
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_utils import strutils
from oslo_utils import timeutils
@@ -39,7 +40,6 @@ from nova.i18n import _
from nova.i18n import _LW
from nova.image import glance
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova import policy
from nova import utils
diff --git a/nova/api/openstack/compute/plugins/v3/tenant_networks.py b/nova/api/openstack/compute/plugins/v3/tenant_networks.py
index ac519935f4..a9a422b2a9 100644
--- a/nova/api/openstack/compute/plugins/v3/tenant_networks.py
+++ b/nova/api/openstack/compute/plugins/v3/tenant_networks.py
@@ -17,6 +17,7 @@
import netaddr
import netaddr.core as netexc
from oslo_config import cfg
+from oslo_log import log as logging
import six
from webob import exc
@@ -29,7 +30,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LE
import nova.network
-from nova.openstack.common import log as logging
from nova import quota
diff --git a/nova/api/openstack/compute/servers.py b/nova/api/openstack/compute/servers.py
index 693eaf4c25..dd4ccbaebe 100644
--- a/nova/api/openstack/compute/servers.py
+++ b/nova/api/openstack/compute/servers.py
@@ -20,6 +20,7 @@ import re
import sys
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_utils import netutils
from oslo_utils import strutils
@@ -37,7 +38,6 @@ from nova.compute import flavors
from nova import exception
from nova.i18n import _
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova import policy
from nova import utils
diff --git a/nova/api/openstack/compute/views/servers.py b/nova/api/openstack/compute/views/servers.py
index d0518f8531..d409c12f6b 100644
--- a/nova/api/openstack/compute/views/servers.py
+++ b/nova/api/openstack/compute/views/servers.py
@@ -16,6 +16,7 @@
import hashlib
+from oslo_log import log as logging
from oslo_utils import timeutils
from nova.api.openstack import common
@@ -24,7 +25,6 @@ from nova.api.openstack.compute.views import flavors as views_flavors
from nova.api.openstack.compute.views import images as views_images
from nova.i18n import _LW
from nova.objects import base as obj_base
-from nova.openstack.common import log as logging
from nova import utils
diff --git a/nova/api/openstack/extensions.py b/nova/api/openstack/extensions.py
index bf6165b4ab..9ce6351233 100644
--- a/nova/api/openstack/extensions.py
+++ b/nova/api/openstack/extensions.py
@@ -18,6 +18,7 @@ import abc
import functools
import os
+from oslo_log import log as logging
from oslo_utils import importutils
import six
import webob.dec
@@ -29,7 +30,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LE
from nova.i18n import _LW
-from nova.openstack.common import log as logging
import nova.policy
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/urlmap.py b/nova/api/openstack/urlmap.py
index 1b80e85afe..4d3e33d07a 100644
--- a/nova/api/openstack/urlmap.py
+++ b/nova/api/openstack/urlmap.py
@@ -16,10 +16,10 @@
import re
import urllib2
+from oslo_log import log as logging
import paste.urlmap
from nova.api.openstack import wsgi
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/api/openstack/wsgi.py b/nova/api/openstack/wsgi.py
index c73e76ea60..f62b5ecf61 100644
--- a/nova/api/openstack/wsgi.py
+++ b/nova/api/openstack/wsgi.py
@@ -19,6 +19,7 @@ import inspect
import math
import time
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import strutils
import six
@@ -31,7 +32,6 @@ from nova import i18n
from nova.i18n import _
from nova.i18n import _LE
from nova.i18n import _LI
-from nova.openstack.common import log as logging
from nova import utils
from nova import wsgi
diff --git a/nova/api/validator.py b/nova/api/validator.py
index cce621849d..755de1912c 100644
--- a/nova/api/validator.py
+++ b/nova/api/validator.py
@@ -15,11 +15,10 @@
import base64
+from oslo_log import log as logging
import rfc3986
import six
-from nova.openstack.common import log as logging
-
LOG = logging.getLogger(__name__)
diff --git a/nova/block_device.py b/nova/block_device.py
index 27f93386ba..28b496c2c1 100644
--- a/nova/block_device.py
+++ b/nova/block_device.py
@@ -16,11 +16,11 @@
import re
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import strutils
from nova import exception
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt import driver
diff --git a/nova/cells/filters/__init__.py b/nova/cells/filters/__init__.py
index f9b6d7a156..d069a2a329 100644
--- a/nova/cells/filters/__init__.py
+++ b/nova/cells/filters/__init__.py
@@ -17,8 +17,9 @@
Cell scheduler filters
"""
+from oslo_log import log as logging
+
from nova import filters
-from nova.openstack.common import log as logging
from nova import policy
LOG = logging.getLogger(__name__)
diff --git a/nova/cells/filters/image_properties.py b/nova/cells/filters/image_properties.py
index 66be72414e..deccf3c740 100644
--- a/nova/cells/filters/image_properties.py
+++ b/nova/cells/filters/image_properties.py
@@ -27,8 +27,9 @@ cells.
from distutils import versionpredicate
+from oslo_log import log as logging
+
from nova.cells import filters
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/cells/filters/target_cell.py b/nova/cells/filters/target_cell.py
index be90d8014c..99618b51f3 100644
--- a/nova/cells/filters/target_cell.py
+++ b/nova/cells/filters/target_cell.py
@@ -21,9 +21,10 @@ specified to route a build to a particular cell. No error handling is
done as there's no way to know whether the full path is a valid.
"""
+from oslo_log import log as logging
+
from nova.cells import filters
from nova.i18n import _LI
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/cells/manager.py b/nova/cells/manager.py
index a8fdef989a..9008fe5658 100644
--- a/nova/cells/manager.py
+++ b/nova/cells/manager.py
@@ -20,6 +20,7 @@ import datetime
import time
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging
from oslo_utils import importutils
from oslo_utils import timeutils
@@ -34,7 +35,6 @@ from nova import manager
from nova import objects
from nova.objects import base as base_obj
from nova.objects import instance as instance_obj
-from nova.openstack.common import log as logging
from nova.openstack.common import periodic_task
cell_manager_opts = [
diff --git a/nova/cells/messaging.py b/nova/cells/messaging.py
index 65a886005c..74069848ea 100644
--- a/nova/cells/messaging.py
+++ b/nova/cells/messaging.py
@@ -26,11 +26,13 @@ reached.
The interface into this module is the MessageRunner class.
"""
+
import sys
import traceback
from eventlet import queue
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_serialization import jsonutils
from oslo_utils import excutils
@@ -53,7 +55,6 @@ from nova.i18n import _, _LE, _LI, _LW
from nova.network import model as network_model
from nova import objects
from nova.objects import base as objects_base
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova import rpc
from nova import utils
diff --git a/nova/cells/rpcapi.py b/nova/cells/rpcapi.py
index d2d624398b..2f097c71f2 100644
--- a/nova/cells/rpcapi.py
+++ b/nova/cells/rpcapi.py
@@ -24,13 +24,13 @@ messaging module.
"""
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_serialization import jsonutils
from nova import exception
from nova.i18n import _LE
from nova.objects import base as objects_base
-from nova.openstack.common import log as logging
from nova import rpc
LOG = logging.getLogger(__name__)
diff --git a/nova/cells/scheduler.py b/nova/cells/scheduler.py
index e25e1494e0..d21cf71467 100644
--- a/nova/cells/scheduler.py
+++ b/nova/cells/scheduler.py
@@ -20,6 +20,7 @@ import copy
import time
from oslo_config import cfg
+from oslo_log import log as logging
from nova.cells import filters
from nova.cells import weights
@@ -32,7 +33,6 @@ from nova import exception
from nova.i18n import _LE, _LI
from nova import objects
from nova.objects import base as obj_base
-from nova.openstack.common import log as logging
from nova.scheduler import utils as scheduler_utils
from nova import utils
diff --git a/nova/cells/state.py b/nova/cells/state.py
index dad44f08ec..b7383d0817 100644
--- a/nova/cells/state.py
+++ b/nova/cells/state.py
@@ -23,6 +23,7 @@ import time
from oslo_config import cfg
from oslo_db import exception as db_exc
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import timeutils
from oslo_utils import units
@@ -34,7 +35,6 @@ from nova import exception
from nova.i18n import _LE
from nova import objects
from nova.openstack.common import fileutils
-from nova.openstack.common import log as logging
from nova import rpc
from nova import utils
diff --git a/nova/cells/weights/mute_child.py b/nova/cells/weights/mute_child.py
index 874bc3b29e..062a5dd3ee 100644
--- a/nova/cells/weights/mute_child.py
+++ b/nova/cells/weights/mute_child.py
@@ -19,11 +19,11 @@ downgrade its likelihood of being chosen for scheduling requests.
"""
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import timeutils
from nova.cells import weights
from nova.i18n import _LW
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/cloudpipe/pipelib.py b/nova/cloudpipe/pipelib.py
index 0d7f5bd6f8..e7e5046cc7 100644
--- a/nova/cloudpipe/pipelib.py
+++ b/nova/cloudpipe/pipelib.py
@@ -25,6 +25,7 @@ import string
import zipfile
from oslo_config import cfg
+from oslo_log import log as logging
from nova import compute
from nova.compute import flavors
@@ -33,7 +34,6 @@ from nova import db
from nova import exception
from nova.i18n import _
from nova.openstack.common import fileutils
-from nova.openstack.common import log as logging
from nova import paths
from nova import utils
diff --git a/nova/cmd/all.py b/nova/cmd/all.py
index a362be4d18..d65bd0282c 100644
--- a/nova/cmd/all.py
+++ b/nova/cmd/all.py
@@ -27,12 +27,12 @@ continue attempting to launch the rest of the services.
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova import config
from nova.i18n import _LE
from nova import objects
from nova.objectstore import s3server
-from nova.openstack.common import log as logging
from nova import service
from nova import utils
from nova.vnc import xvp_proxy
@@ -47,7 +47,7 @@ CONF.import_opt('enabled_ssl_apis', 'nova.service')
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
LOG = logging.getLogger('nova.all')
utils.monkey_patch()
objects.register_all()
diff --git a/nova/cmd/api.py b/nova/cmd/api.py
index 25548cddb4..770cb95d36 100644
--- a/nova/cmd/api.py
+++ b/nova/cmd/api.py
@@ -23,10 +23,10 @@ Starts both the EC2 and OpenStack APIs in separate greenthreads.
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova import config
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -39,7 +39,7 @@ CONF.import_opt('enabled_ssl_apis', 'nova.service')
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
utils.monkey_patch()
objects.register_all()
diff --git a/nova/cmd/api_ec2.py b/nova/cmd/api_ec2.py
index bf8c0436d0..6df472bfdc 100644
--- a/nova/cmd/api_ec2.py
+++ b/nova/cmd/api_ec2.py
@@ -19,10 +19,10 @@
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova import config
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -35,7 +35,7 @@ CONF.import_opt('enabled_ssl_apis', 'nova.service')
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
utils.monkey_patch()
objects.register_all()
diff --git a/nova/cmd/api_metadata.py b/nova/cmd/api_metadata.py
index bb14e67cc9..440f4db1da 100644
--- a/nova/cmd/api_metadata.py
+++ b/nova/cmd/api_metadata.py
@@ -19,12 +19,12 @@
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova.conductor import rpcapi as conductor_rpcapi
from nova import config
from nova import objects
from nova.objects import base as objects_base
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -38,7 +38,7 @@ CONF.import_opt('use_local', 'nova.conductor.api', group='conductor')
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
utils.monkey_patch()
objects.register_all()
diff --git a/nova/cmd/api_os_compute.py b/nova/cmd/api_os_compute.py
index 27d38f853b..e80354b9b7 100644
--- a/nova/cmd/api_os_compute.py
+++ b/nova/cmd/api_os_compute.py
@@ -19,10 +19,10 @@
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova import config
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -35,7 +35,7 @@ CONF.import_opt('enabled_ssl_apis', 'nova.service')
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
utils.monkey_patch()
objects.register_all()
diff --git a/nova/cmd/baseproxy.py b/nova/cmd/baseproxy.py
index 8e52788a8f..aa398579fb 100644
--- a/nova/cmd/baseproxy.py
+++ b/nova/cmd/baseproxy.py
@@ -21,10 +21,10 @@ import os
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova import config
from nova.console import websocketproxy
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import version
diff --git a/nova/cmd/cells.py b/nova/cmd/cells.py
index 744529e8ce..a9ef58628e 100644
--- a/nova/cmd/cells.py
+++ b/nova/cmd/cells.py
@@ -18,10 +18,10 @@
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova import config
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -34,7 +34,7 @@ CONF.import_opt('manager', 'nova.cells.opts', group='cells')
def main():
config.parse_args(sys.argv)
- logging.setup('nova')
+ logging.setup(CONF, 'nova')
utils.monkey_patch()
objects.register_all()
diff --git a/nova/cmd/cert.py b/nova/cmd/cert.py
index 09de2b509e..e3885c5f47 100644
--- a/nova/cmd/cert.py
+++ b/nova/cmd/cert.py
@@ -17,9 +17,9 @@
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova import config
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -31,7 +31,7 @@ CONF.import_opt('cert_topic', 'nova.cert.rpcapi')
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
utils.monkey_patch()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/compute.py b/nova/cmd/compute.py
index fd40a3a4dc..938acf8964 100644
--- a/nova/cmd/compute.py
+++ b/nova/cmd/compute.py
@@ -20,6 +20,7 @@ import sys
import traceback
from oslo_config import cfg
+from oslo_log import log as logging
from nova.conductor import rpcapi as conductor_rpcapi
from nova import config
@@ -28,7 +29,6 @@ from nova import exception
from nova.i18n import _LE
from nova import objects
from nova.objects import base as objects_base
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -56,7 +56,7 @@ def block_db_access():
def main():
config.parse_args(sys.argv)
- logging.setup('nova')
+ logging.setup(CONF, 'nova')
utils.monkey_patch()
objects.register_all()
diff --git a/nova/cmd/conductor.py b/nova/cmd/conductor.py
index 26861e88a3..18bb0bfca6 100644
--- a/nova/cmd/conductor.py
+++ b/nova/cmd/conductor.py
@@ -18,10 +18,10 @@ import sys
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from nova import config
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -33,7 +33,7 @@ CONF.import_opt('topic', 'nova.conductor.api', group='conductor')
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
utils.monkey_patch()
objects.register_all()
diff --git a/nova/cmd/console.py b/nova/cmd/console.py
index 9b7ba3fd4b..1ec670409d 100644
--- a/nova/cmd/console.py
+++ b/nova/cmd/console.py
@@ -18,9 +18,9 @@
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova import config
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import version
@@ -31,7 +31,7 @@ CONF.import_opt('console_topic', 'nova.console.rpcapi')
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/consoleauth.py b/nova/cmd/consoleauth.py
index 99b9e46c5f..3a3be5716b 100644
--- a/nova/cmd/consoleauth.py
+++ b/nova/cmd/consoleauth.py
@@ -18,10 +18,10 @@
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova import config
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import version
@@ -31,7 +31,7 @@ CONF = cfg.CONF
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
objects.register_all()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/dhcpbridge.py b/nova/cmd/dhcpbridge.py
index 1971af4a5d..116d5c8f10 100644
--- a/nova/cmd/dhcpbridge.py
+++ b/nova/cmd/dhcpbridge.py
@@ -25,6 +25,7 @@ import sys
import traceback
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import importutils
@@ -37,7 +38,6 @@ from nova.i18n import _LE
from nova.network import rpcapi as network_rpcapi
from nova import objects
from nova.objects import base as objects_base
-from nova.openstack.common import log as logging
from nova import rpc
CONF = cfg.CONF
@@ -117,7 +117,7 @@ def main():
config.parse_args(sys.argv,
default_config_files=jsonutils.loads(os.environ['CONFIG_FILE']))
- logging.setup("nova")
+ logging.setup(CONF, "nova")
global LOG
LOG = logging.getLogger('nova.dhcpbridge')
objects.register_all()
diff --git a/nova/cmd/manage.py b/nova/cmd/manage.py
index 6f75719215..b7d99b6cba 100644
--- a/nova/cmd/manage.py
+++ b/nova/cmd/manage.py
@@ -61,6 +61,7 @@ import sys
import decorator
import netaddr
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_utils import importutils
import six
@@ -75,7 +76,6 @@ from nova import exception
from nova.i18n import _
from nova import objects
from nova.openstack.common import cliutils
-from nova.openstack.common import log as logging
from nova import quota
from nova import rpc
from nova import servicegroup
@@ -1307,7 +1307,7 @@ def main():
CONF.register_cli_opt(category_opt)
try:
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
except cfg.ConfigFilesNotFoundError:
cfgfile = CONF.config_file[-1] if CONF.config_file else None
if cfgfile and not os.access(cfgfile, os.R_OK):
diff --git a/nova/cmd/network.py b/nova/cmd/network.py
index f28fbb098a..03399de780 100644
--- a/nova/cmd/network.py
+++ b/nova/cmd/network.py
@@ -20,6 +20,7 @@ import sys
import traceback
from oslo_config import cfg
+from oslo_log import log as logging
from nova.conductor import rpcapi as conductor_rpcapi
from nova import config
@@ -28,7 +29,6 @@ from nova import exception
from nova.i18n import _LE
from nova import objects
from nova.objects import base as objects_base
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -56,7 +56,7 @@ def block_db_access():
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
utils.monkey_patch()
objects.register_all()
diff --git a/nova/cmd/objectstore.py b/nova/cmd/objectstore.py
index 2edb2894f5..af458faa7f 100644
--- a/nova/cmd/objectstore.py
+++ b/nova/cmd/objectstore.py
@@ -19,9 +19,10 @@
import sys
+from oslo_log import log as logging
+
from nova import config
from nova.objectstore import s3server
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -30,7 +31,7 @@ from nova import version
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(config.CONF, "nova")
utils.monkey_patch()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/scheduler.py b/nova/cmd/scheduler.py
index 6c57dcef8f..91cd606bfb 100644
--- a/nova/cmd/scheduler.py
+++ b/nova/cmd/scheduler.py
@@ -19,10 +19,10 @@
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova import config
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -34,7 +34,7 @@ CONF.import_opt('scheduler_topic', 'nova.scheduler.rpcapi')
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(CONF, "nova")
utils.monkey_patch()
objects.register_all()
diff --git a/nova/cmd/xvpvncproxy.py b/nova/cmd/xvpvncproxy.py
index 2dd683ad2b..13ce427fb4 100644
--- a/nova/cmd/xvpvncproxy.py
+++ b/nova/cmd/xvpvncproxy.py
@@ -17,8 +17,9 @@
import sys
+from oslo_log import log as logging
+
from nova import config
-from nova.openstack.common import log as logging
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import version
@@ -27,7 +28,7 @@ from nova.vnc import xvp_proxy
def main():
config.parse_args(sys.argv)
- logging.setup("nova")
+ logging.setup(config.CONF, "nova")
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/compute/api.py b/nova/compute/api.py
index 9b5f823b16..cacf8b20f1 100644
--- a/nova/compute/api.py
+++ b/nova/compute/api.py
@@ -27,6 +27,7 @@ import string
import uuid
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import excutils
from oslo_utils import strutils
@@ -67,7 +68,6 @@ from nova.objects import block_device as block_device_obj
from nova.objects import keypair as keypair_obj
from nova.objects import quotas as quotas_obj
from nova.objects import security_group as security_group_obj
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova.pci import request as pci_request
import nova.policy
@@ -4073,10 +4073,10 @@ class SecurityGroupAPI(base.Base, security_group_base.SecurityGroupBase):
for v in vals:
rule = self.db.security_group_rule_create(context, v)
rules.append(rule)
- LOG.audit(msg, {'name': name,
- 'protocol': rule.protocol,
- 'from_port': rule.from_port,
- 'to_port': rule.to_port})
+ LOG.info(msg, {'name': name,
+ 'protocol': rule.protocol,
+ 'from_port': rule.from_port,
+ 'to_port': rule.to_port})
self.trigger_rules_refresh(context, id=id)
return rules
@@ -4086,10 +4086,10 @@ class SecurityGroupAPI(base.Base, security_group_base.SecurityGroupBase):
"(%(from_port)s:%(to_port)s)")
for rule_id in rule_ids:
rule = self.get_rule(context, rule_id)
- LOG.audit(msg, {'name': security_group['name'],
- 'protocol': rule.protocol,
- 'from_port': rule.from_port,
- 'to_port': rule.to_port})
+ LOG.info(msg, {'name': security_group['name'],
+ 'protocol': rule.protocol,
+ 'from_port': rule.from_port,
+ 'to_port': rule.to_port})
self.db.security_group_rule_destroy(context, rule_id)
diff --git a/nova/compute/claims.py b/nova/compute/claims.py
index 5d64305030..602ca25680 100644
--- a/nova/compute/claims.py
+++ b/nova/compute/claims.py
@@ -17,6 +17,7 @@
Claim objects for use with resource tracking.
"""
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from nova import context
@@ -25,7 +26,6 @@ from nova.i18n import _
from nova.i18n import _LI
from nova import objects
from nova.objects import base as obj_base
-from nova.openstack.common import log as logging
from nova.virt import hardware
@@ -155,7 +155,7 @@ class Claim(NopClaim):
msg = _("Attempting claim: memory %(memory_mb)d MB, disk %(disk_gb)d "
"GB")
params = {'memory_mb': self.memory_mb, 'disk_gb': self.disk_gb}
- LOG.audit(msg % params, instance=self.instance)
+ LOG.info(msg % params, instance=self.instance)
reasons = [self._test_memory(resources, memory_mb_limit),
self._test_disk(resources, disk_gb_limit),
diff --git a/nova/compute/flavors.py b/nova/compute/flavors.py
index f2b59ca95c..fdf9de2182 100644
--- a/nova/compute/flavors.py
+++ b/nova/compute/flavors.py
@@ -22,6 +22,7 @@ import re
import uuid
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import strutils
import six
@@ -32,7 +33,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LE
from nova import objects
-from nova.openstack.common import log as logging
from nova import utils
flavor_opts = [
diff --git a/nova/compute/manager.py b/nova/compute/manager.py
index 9a9874f1f0..7051366bc0 100644
--- a/nova/compute/manager.py
+++ b/nova/compute/manager.py
@@ -41,6 +41,7 @@ import eventlet.semaphore
import eventlet.timeout
from keystoneclient import exceptions as keystone_exception
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_serialization import jsonutils
from oslo_utils import excutils
@@ -76,7 +77,6 @@ from nova.network import model as network_model
from nova.network.security_group import openstack_driver
from nova import objects
from nova.objects import base as obj_base
-from nova.openstack.common import log as logging
from nova.openstack.common import loopingcall
from nova.openstack.common import periodic_task
from nova import paths
@@ -4636,7 +4636,7 @@ class ComputeManager(manager.Manager):
LOG.info(_LI('Attaching volume %(volume_id)s to %(mountpoint)s'),
{'volume_id': bdm.volume_id,
'mountpoint': bdm['mount_device']},
- context=context, instance=instance)
+ context=context, instance=instance)
try:
bdm.attach(context, instance, self.volume_api, self.driver,
do_check_attach=False, do_driver_attach=True)
diff --git a/nova/compute/monitors/__init__.py b/nova/compute/monitors/__init__.py
index 360b27dbec..ba6dad01cc 100644
--- a/nova/compute/monitors/__init__.py
+++ b/nova/compute/monitors/__init__.py
@@ -24,12 +24,12 @@ import functools
import types
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import timeutils
import six
from nova.i18n import _, _LW
from nova import loadables
-from nova.openstack.common import log as logging
compute_monitors_opts = [
cfg.MultiStrOpt('compute_available_monitors',
diff --git a/nova/compute/monitors/virt/cpu_monitor.py b/nova/compute/monitors/virt/cpu_monitor.py
index 06b1606994..17164967c1 100644
--- a/nova/compute/monitors/virt/cpu_monitor.py
+++ b/nova/compute/monitors/virt/cpu_monitor.py
@@ -18,13 +18,13 @@ CPU monitor based on compute driver to retrieve CPU information
"""
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import timeutils
from nova.compute import monitors
from nova.compute.monitors import cpu_monitor as monitor
from nova import exception
from nova.i18n import _LE
-from nova.openstack.common import log as logging
CONF = cfg.CONF
CONF.import_opt('compute_driver', 'nova.virt.driver')
diff --git a/nova/compute/resource_tracker.py b/nova/compute/resource_tracker.py
index ae20412840..a14bf0dd62 100644
--- a/nova/compute/resource_tracker.py
+++ b/nova/compute/resource_tracker.py
@@ -21,6 +21,7 @@ model.
import copy
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import importutils
@@ -36,7 +37,6 @@ from nova.i18n import _, _LI, _LW
from nova import objects
from nova.objects import base as obj_base
from nova.objects import instance as instance_obj
-from nova.openstack.common import log as logging
from nova.pci import manager as pci_manager
from nova.pci import whitelist as pci_whitelist
from nova import rpc
diff --git a/nova/compute/resources/__init__.py b/nova/compute/resources/__init__.py
index 49b8032a59..5641ffbef4 100644
--- a/nova/compute/resources/__init__.py
+++ b/nova/compute/resources/__init__.py
@@ -13,10 +13,10 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
import stevedore
from nova.i18n import _LW
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/compute/resources/vcpu.py b/nova/compute/resources/vcpu.py
index e7290a3e1a..3f307b01d7 100644
--- a/nova/compute/resources/vcpu.py
+++ b/nova/compute/resources/vcpu.py
@@ -13,8 +13,9 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
+
from nova.compute.resources import base
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/compute/rpcapi.py b/nova/compute/rpcapi.py
index b6b56b77f0..fb338d1caf 100644
--- a/nova/compute/rpcapi.py
+++ b/nova/compute/rpcapi.py
@@ -17,6 +17,7 @@ Client side of the compute RPC API.
"""
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_serialization import jsonutils
@@ -24,7 +25,6 @@ from nova import exception
from nova.i18n import _, _LW
from nova import objects
from nova.objects import base as objects_base
-from nova.openstack.common import log as logging
from nova import rpc
rpcapi_opts = [
diff --git a/nova/compute/utils.py b/nova/compute/utils.py
index c4240aef13..d03f82eb1e 100644
--- a/nova/compute/utils.py
+++ b/nova/compute/utils.py
@@ -20,6 +20,7 @@ import traceback
import netifaces
from oslo_config import cfg
+from oslo_log import log
from oslo_utils import encodeutils
from nova import block_device
@@ -31,7 +32,6 @@ from nova.network import model as network_model
from nova import notifications
from nova import objects
from nova.objects import base as obj_base
-from nova.openstack.common import log
from nova import rpc
from nova import utils
from nova.virt import driver
diff --git a/nova/conductor/api.py b/nova/conductor/api.py
index d8b34d0cbb..00a57b1a66 100644
--- a/nova/conductor/api.py
+++ b/nova/conductor/api.py
@@ -15,13 +15,13 @@
"""Handles all requests to the conductor service."""
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from nova import baserpc
from nova.conductor import manager
from nova.conductor import rpcapi
from nova.i18n import _LI, _LW
-from nova.openstack.common import log as logging
from nova import utils
conductor_opts = [
diff --git a/nova/conductor/manager.py b/nova/conductor/manager.py
index 4b218fa03b..95c1232856 100644
--- a/nova/conductor/manager.py
+++ b/nova/conductor/manager.py
@@ -17,6 +17,7 @@
import copy
import itertools
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_serialization import jsonutils
from oslo_utils import excutils
@@ -42,7 +43,6 @@ from nova.network.security_group import openstack_driver
from nova import notifications
from nova import objects
from nova.objects import base as nova_object
-from nova.openstack.common import log as logging
from nova import quota
from nova.scheduler import client as scheduler_client
from nova.scheduler import utils as scheduler_utils
diff --git a/nova/conductor/tasks/live_migrate.py b/nova/conductor/tasks/live_migrate.py
index ee3668103c..38b37f8672 100644
--- a/nova/conductor/tasks/live_migrate.py
+++ b/nova/conductor/tasks/live_migrate.py
@@ -11,6 +11,7 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from nova.compute import power_state
from nova.compute import rpcapi as compute_rpcapi
@@ -19,7 +20,6 @@ from nova import exception
from nova.i18n import _
from nova import image
from nova import objects
-from nova.openstack.common import log as logging
from nova.scheduler import client as scheduler_client
from nova.scheduler import utils as scheduler_utils
from nova import servicegroup
diff --git a/nova/config.py b/nova/config.py
index 9fa4609f06..9052787248 100644
--- a/nova/config.py
+++ b/nova/config.py
@@ -17,9 +17,9 @@
from oslo_config import cfg
from oslo_db import options
+from oslo_log import log
from nova import debugger
-from nova.openstack.common import log
from nova import paths
from nova import rpc
from nova import version
@@ -45,6 +45,7 @@ _DEFAULT_LOGGING_CONTEXT_FORMAT = ('%(asctime)s.%(msecs)03d %(process)d '
def parse_args(argv, default_config_files=None):
log.set_defaults(_DEFAULT_LOGGING_CONTEXT_FORMAT, _DEFAULT_LOG_LEVELS)
+ log.register_options(CONF)
options.set_defaults(CONF, connection=_DEFAULT_SQL_CONNECTION,
sqlite_db='nova.sqlite')
rpc.set_defaults(control_exchange='nova')
diff --git a/nova/console/manager.py b/nova/console/manager.py
index 2ba313fa46..d82f43aadb 100644
--- a/nova/console/manager.py
+++ b/nova/console/manager.py
@@ -18,13 +18,13 @@
import socket
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_utils import importutils
from nova.compute import rpcapi as compute_rpcapi
from nova import exception
from nova import manager
-from nova.openstack.common import log as logging
from nova import utils
diff --git a/nova/console/serial.py b/nova/console/serial.py
index 58f10de9b0..4c5213d499 100644
--- a/nova/console/serial.py
+++ b/nova/console/serial.py
@@ -17,11 +17,11 @@
import socket
from oslo_config import cfg
+from oslo_log import log as logging
import six.moves
from nova import exception
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova import utils
LOG = logging.getLogger(__name__)
diff --git a/nova/console/vmrc_manager.py b/nova/console/vmrc_manager.py
index fe9767afbd..f57d277c49 100644
--- a/nova/console/vmrc_manager.py
+++ b/nova/console/vmrc_manager.py
@@ -16,12 +16,12 @@
"""VMRC Console Manager."""
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import importutils
from nova.compute import rpcapi as compute_rpcapi
from nova import exception
from nova import manager
-from nova.openstack.common import log as logging
from nova.virt.vmwareapi import driver as vmwareapi_conn
diff --git a/nova/console/websocketproxy.py b/nova/console/websocketproxy.py
index 483d4d7edd..01e6bb89c9 100644
--- a/nova/console/websocketproxy.py
+++ b/nova/console/websocketproxy.py
@@ -23,13 +23,13 @@ import socket
import sys
import urlparse
+from oslo_log import log as logging
import websockify
from nova.consoleauth import rpcapi as consoleauth_rpcapi
from nova import context
from nova import exception
from nova.i18n import _
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/console/xvp.py b/nova/console/xvp.py
index 0e971b2173..f58cf8cf22 100644
--- a/nova/console/xvp.py
+++ b/nova/console/xvp.py
@@ -21,12 +21,12 @@ import signal
import jinja2
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
from nova import context
from nova import db
from nova.i18n import _, _LE
-from nova.openstack.common import log as logging
from nova import paths
from nova import utils
diff --git a/nova/consoleauth/manager.py b/nova/consoleauth/manager.py
index dd3efb2c36..dad332fffd 100644
--- a/nova/consoleauth/manager.py
+++ b/nova/consoleauth/manager.py
@@ -19,6 +19,7 @@
import time
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_serialization import jsonutils
@@ -27,7 +28,6 @@ from nova.compute import rpcapi as compute_rpcapi
from nova.i18n import _LI, _LW
from nova import manager
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common import memorycache
diff --git a/nova/context.py b/nova/context.py
index f5a339f249..2af67f94f2 100644
--- a/nova/context.py
+++ b/nova/context.py
@@ -22,13 +22,13 @@ import copy
from keystoneclient import auth
from keystoneclient import service_catalog
from oslo_context import context
+from oslo_log import log as logging
from oslo_utils import timeutils
import six
from nova import exception
from nova.i18n import _, _LW
from nova.openstack.common import local
-from nova.openstack.common import log as logging
from nova import policy
diff --git a/nova/crypto.py b/nova/crypto.py
index ece455cd28..7c68c2600b 100644
--- a/nova/crypto.py
+++ b/nova/crypto.py
@@ -30,6 +30,7 @@ import struct
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
from oslo_utils import timeutils
from pyasn1.codec.der import encoder as der_encoder
@@ -40,7 +41,6 @@ from nova import db
from nova import exception
from nova.i18n import _, _LE
from nova.openstack.common import fileutils
-from nova.openstack.common import log as logging
from nova import paths
from nova import utils
diff --git a/nova/db/api.py b/nova/db/api.py
index f41eaf9b1e..67d2c39830 100644
--- a/nova/db/api.py
+++ b/nova/db/api.py
@@ -29,10 +29,10 @@ these objects be simple dictionaries.
from oslo_config import cfg
from oslo_db import concurrency
+from oslo_log import log as logging
from nova.cells import rpcapi as cells_rpcapi
from nova.i18n import _LE
-from nova.openstack.common import log as logging
db_opts = [
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index efde66a16b..006dde33b0 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -30,6 +30,7 @@ from oslo_config import cfg
from oslo_db import exception as db_exc
from oslo_db.sqlalchemy import session as db_session
from oslo_db.sqlalchemy import utils as sqlalchemyutils
+from oslo_log import log as logging
from oslo_utils import excutils
from oslo_utils import timeutils
import retrying
@@ -60,7 +61,6 @@ import nova.context
from nova.db.sqlalchemy import models
from nova import exception
from nova.i18n import _, _LI, _LE, _LW
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova import quota
diff --git a/nova/db/sqlalchemy/migrate_repo/versions/216_havana.py b/nova/db/sqlalchemy/migrate_repo/versions/216_havana.py
index 886ca2ef88..d3992d88d3 100644
--- a/nova/db/sqlalchemy/migrate_repo/versions/216_havana.py
+++ b/nova/db/sqlalchemy/migrate_repo/versions/216_havana.py
@@ -14,6 +14,7 @@
from migrate.changeset import UniqueConstraint
from migrate import ForeignKeyConstraint
+from oslo_log import log as logging
from sqlalchemy import Boolean, BigInteger, Column, DateTime, Enum, Float
from sqlalchemy import dialects
from sqlalchemy import ForeignKey, Index, Integer, MetaData, String, Table
@@ -21,7 +22,6 @@ from sqlalchemy import Text
from sqlalchemy.types import NullType
from nova.i18n import _LE
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/db/sqlalchemy/migrate_repo/versions/234_add_expire_reservations_index.py b/nova/db/sqlalchemy/migrate_repo/versions/234_add_expire_reservations_index.py
index 917ea1461e..de1d25e2cd 100644
--- a/nova/db/sqlalchemy/migrate_repo/versions/234_add_expire_reservations_index.py
+++ b/nova/db/sqlalchemy/migrate_repo/versions/234_add_expire_reservations_index.py
@@ -12,10 +12,10 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
from sqlalchemy import Index, MetaData, Table
from nova.i18n import _LI
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/db/sqlalchemy/migrate_repo/versions/248_add_expire_reservations_index.py b/nova/db/sqlalchemy/migrate_repo/versions/248_add_expire_reservations_index.py
index 917ea1461e..de1d25e2cd 100644
--- a/nova/db/sqlalchemy/migrate_repo/versions/248_add_expire_reservations_index.py
+++ b/nova/db/sqlalchemy/migrate_repo/versions/248_add_expire_reservations_index.py
@@ -12,10 +12,10 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
from sqlalchemy import Index, MetaData, Table
from nova.i18n import _LI
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/db/sqlalchemy/migrate_repo/versions/267_instance_uuid_non_nullable.py b/nova/db/sqlalchemy/migrate_repo/versions/267_instance_uuid_non_nullable.py
index 5be324d2f5..492f20071e 100644
--- a/nova/db/sqlalchemy/migrate_repo/versions/267_instance_uuid_non_nullable.py
+++ b/nova/db/sqlalchemy/migrate_repo/versions/267_instance_uuid_non_nullable.py
@@ -14,12 +14,12 @@
from migrate import UniqueConstraint
from oslo_db.sqlalchemy import utils
+from oslo_log import log as logging
from sqlalchemy import MetaData
from sqlalchemy.sql import null
from nova import exception
from nova.i18n import _
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/db/sqlalchemy/migration.py b/nova/db/sqlalchemy/migration.py
index b0965a5f2b..34e192c7f2 100644
--- a/nova/db/sqlalchemy/migration.py
+++ b/nova/db/sqlalchemy/migration.py
@@ -20,13 +20,13 @@ from migrate import exceptions as versioning_exceptions
from migrate.versioning import api as versioning_api
from migrate.versioning.repository import Repository
from oslo_db.sqlalchemy import utils as db_utils
+from oslo_log import log as logging
import sqlalchemy
from sqlalchemy.sql import null
from nova.db.sqlalchemy import api as db_session
from nova import exception
from nova.i18n import _
-from nova.openstack.common import log as logging
INIT_VERSION = 215
_REPOSITORY = None
diff --git a/nova/db/sqlalchemy/utils.py b/nova/db/sqlalchemy/utils.py
index a8dda66319..753eac6f8c 100644
--- a/nova/db/sqlalchemy/utils.py
+++ b/nova/db/sqlalchemy/utils.py
@@ -15,6 +15,7 @@
from oslo_db import exception as db_exc
from oslo_db.sqlalchemy import utils as oslodbutils
+from oslo_log import log as logging
from sqlalchemy.exc import OperationalError
from sqlalchemy.ext.compiler import compiles
from sqlalchemy import MetaData
@@ -25,7 +26,6 @@ from sqlalchemy.types import NullType
from nova.db.sqlalchemy import api as db
from nova import exception
from nova.i18n import _, _LE
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/debugger.py b/nova/debugger.py
index 31fdba5936..c5c1534073 100644
--- a/nova/debugger.py
+++ b/nova/debugger.py
@@ -60,8 +60,8 @@ def init():
if not (CONF.remote_debug.host and CONF.remote_debug.port):
return
+ import logging
from nova.i18n import _LW
- from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
LOG.debug('Listening on %(host)s:%(port)s for debug connection',
diff --git a/nova/exception.py b/nova/exception.py
index 6befc56898..2cd3152bfb 100644
--- a/nova/exception.py
+++ b/nova/exception.py
@@ -26,11 +26,11 @@ import functools
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
import webob.exc
from nova.i18n import _, _LE
-from nova.openstack.common import log as logging
from nova import safe_utils
LOG = logging.getLogger(__name__)
diff --git a/nova/filters.py b/nova/filters.py
index 29d2e12836..5f060bbdc3 100644
--- a/nova/filters.py
+++ b/nova/filters.py
@@ -17,9 +17,10 @@
Filter support
"""
+from oslo_log import log as logging
+
from nova.i18n import _LI
from nova import loadables
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/hooks.py b/nova/hooks.py
index 15c2d8c490..35bc3af29d 100644
--- a/nova/hooks.py
+++ b/nova/hooks.py
@@ -44,10 +44,10 @@ Example Hook object with function parameters::
import functools
+from oslo_log import log as logging
import stevedore
from nova.i18n import _, _LE
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
NS = 'nova.hooks'
diff --git a/nova/image/download/__init__.py b/nova/image/download/__init__.py
index 1696c8c48c..ee0cd341ec 100644
--- a/nova/image/download/__init__.py
+++ b/nova/image/download/__init__.py
@@ -13,9 +13,8 @@
# License for the specific language governing permissions and limitations
# under the License.
-import logging
-
from oslo_config import cfg
+from oslo_log import log as logging
import stevedore.driver
import stevedore.extension
diff --git a/nova/image/download/file.py b/nova/image/download/file.py
index 0977e46570..cceac8ef74 100644
--- a/nova/image/download/file.py
+++ b/nova/image/download/file.py
@@ -13,9 +13,8 @@
# License for the specific language governing permissions and limitations
# under the License.
-import logging
-
from oslo_config import cfg
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _, _LI
diff --git a/nova/image/glance.py b/nova/image/glance.py
index bb91045964..654231aa0a 100644
--- a/nova/image/glance.py
+++ b/nova/image/glance.py
@@ -26,6 +26,7 @@ import time
import glanceclient
import glanceclient.exc
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import netutils
from oslo_utils import timeutils
@@ -35,7 +36,6 @@ import six.moves.urllib.parse as urlparse
from nova import exception
from nova.i18n import _, _LE
import nova.image.download as image_xfers
-from nova.openstack.common import log as logging
glance_opts = [
diff --git a/nova/image/s3.py b/nova/image/s3.py
index 1835028107..2076b91912 100644
--- a/nova/image/s3.py
+++ b/nova/image/s3.py
@@ -28,6 +28,7 @@ import eventlet
from lxml import etree
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from nova.api.ec2 import ec2utils
import nova.cert.rpcapi
@@ -35,7 +36,6 @@ from nova.compute import arch
from nova import exception
from nova.i18n import _, _LE, _LI
from nova.image import glance
-from nova.openstack.common import log as logging
from nova import utils
diff --git a/nova/keymgr/barbican.py b/nova/keymgr/barbican.py
index 1c69d69d70..9f68b1b536 100644
--- a/nova/keymgr/barbican.py
+++ b/nova/keymgr/barbican.py
@@ -24,6 +24,7 @@ import binascii
from barbicanclient import client as barbican_client
from keystoneclient import session
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
from nova import exception
@@ -31,7 +32,6 @@ from nova.i18n import _
from nova.i18n import _LE
from nova.keymgr import key as keymgr_key
from nova.keymgr import key_mgr
-from nova.openstack.common import log as logging
barbican_opts = [
cfg.StrOpt('catalog_info',
diff --git a/nova/keymgr/mock_key_mgr.py b/nova/keymgr/mock_key_mgr.py
index 96b4872e8a..82fe6494f3 100644
--- a/nova/keymgr/mock_key_mgr.py
+++ b/nova/keymgr/mock_key_mgr.py
@@ -28,11 +28,12 @@ this class.
import array
+from oslo_log import log as logging
+
from nova import exception
from nova.i18n import _LW
from nova.keymgr import key
from nova.keymgr import key_mgr
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova import utils
diff --git a/nova/keymgr/single_key_mgr.py b/nova/keymgr/single_key_mgr.py
index ca955c6dcd..f12b35e8fe 100644
--- a/nova/keymgr/single_key_mgr.py
+++ b/nova/keymgr/single_key_mgr.py
@@ -18,11 +18,11 @@ An implementation of a key manager that returns a single key in response to
all invocations of get_key.
"""
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _, _LW
from nova.keymgr import mock_key_mgr
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/manager.py b/nova/manager.py
index 6be6572313..97fe80fdab 100644
--- a/nova/manager.py
+++ b/nova/manager.py
@@ -52,9 +52,9 @@ This module provides Manager, a base class for managers.
"""
from oslo_config import cfg
+from oslo_log import log as logging
from nova.db import base
-from nova.openstack.common import log as logging
from nova.openstack.common import periodic_task
from nova import rpc
diff --git a/nova/network/api.py b/nova/network/api.py
index a228546f2d..b3c422106f 100644
--- a/nova/network/api.py
+++ b/nova/network/api.py
@@ -19,6 +19,7 @@
import functools
from oslo_config import cfg
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _LI
@@ -28,7 +29,6 @@ from nova.network import model as network_model
from nova.network import rpcapi as network_rpcapi
from nova import objects
from nova.objects import base as obj_base
-from nova.openstack.common import log as logging
from nova import policy
from nova import utils
diff --git a/nova/network/base_api.py b/nova/network/base_api.py
index 4adc80dd34..73abb2f6d1 100644
--- a/nova/network/base_api.py
+++ b/nova/network/base_api.py
@@ -17,6 +17,7 @@ import functools
import inspect
from oslo_concurrency import lockutils
+from oslo_log import log as logging
from oslo_utils import excutils
from nova.db import base
@@ -24,7 +25,6 @@ from nova import hooks
from nova.i18n import _, _LE
from nova.network import model as network_model
from nova import objects
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/network/driver.py b/nova/network/driver.py
index 97d8255f8f..d65ad3c5fb 100644
--- a/nova/network/driver.py
+++ b/nova/network/driver.py
@@ -15,10 +15,10 @@
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import importutils
from nova.i18n import _LE, _LI
-from nova.openstack.common import log as logging
driver_opts = [
cfg.StrOpt('network_driver',
diff --git a/nova/network/floating_ips.py b/nova/network/floating_ips.py
index b01ef2aa6d..ddc043e073 100644
--- a/nova/network/floating_ips.py
+++ b/nova/network/floating_ips.py
@@ -17,6 +17,7 @@
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_utils import excutils
from oslo_utils import importutils
@@ -28,7 +29,6 @@ from nova import exception
from nova.i18n import _LE, _LI, _LW
from nova.network import rpcapi as network_rpcapi
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova import quota
from nova import rpc
diff --git a/nova/network/l3.py b/nova/network/l3.py
index ea247d0ad8..3a7a2d80a6 100644
--- a/nova/network/l3.py
+++ b/nova/network/l3.py
@@ -13,8 +13,9 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
+
from nova.network import linux_net
-from nova.openstack.common import log as logging
from nova import utils
LOG = logging.getLogger(__name__)
diff --git a/nova/network/ldapdns.py b/nova/network/ldapdns.py
index 9909a138a3..44f4b6dec3 100644
--- a/nova/network/ldapdns.py
+++ b/nova/network/ldapdns.py
@@ -21,11 +21,11 @@ except ImportError:
import time
from oslo_config import cfg
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _, _LW
from nova.network import dns_driver
-from nova.openstack.common import log as logging
from nova import utils
CONF = cfg.CONF
diff --git a/nova/network/linux_net.py b/nova/network/linux_net.py
index 37bf56206b..f50cbaf765 100644
--- a/nova/network/linux_net.py
+++ b/nova/network/linux_net.py
@@ -26,6 +26,7 @@ import time
import netaddr
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import excutils
from oslo_utils import importutils
@@ -36,7 +37,6 @@ from nova import exception
from nova.i18n import _, _LE, _LW
from nova import objects
from nova.openstack.common import fileutils
-from nova.openstack.common import log as logging
from nova import paths
from nova.pci import utils as pci_utils
from nova import utils
diff --git a/nova/network/manager.py b/nova/network/manager.py
index 7a4f907a85..28eed23cab 100644
--- a/nova/network/manager.py
+++ b/nova/network/manager.py
@@ -35,6 +35,7 @@ import uuid
import eventlet
import netaddr
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_utils import excutils
from oslo_utils import importutils
@@ -56,7 +57,6 @@ from nova.network import rpcapi as network_rpcapi
from nova import objects
from nova.objects import base as obj_base
from nova.objects import quotas as quotas_obj
-from nova.openstack.common import log as logging
from nova.openstack.common import periodic_task
from nova.openstack.common import uuidutils
from nova import servicegroup
diff --git a/nova/network/minidns.py b/nova/network/minidns.py
index 71174391c6..b4963c2065 100644
--- a/nova/network/minidns.py
+++ b/nova/network/minidns.py
@@ -17,11 +17,11 @@ import shutil
import tempfile
from oslo_config import cfg
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _, _LI, _LW
from nova.network import dns_driver
-from nova.openstack.common import log as logging
CONF = cfg.CONF
LOG = logging.getLogger(__name__)
diff --git a/nova/network/neutronv2/api.py b/nova/network/neutronv2/api.py
index 0d4be849cd..5a7b38d314 100644
--- a/nova/network/neutronv2/api.py
+++ b/nova/network/neutronv2/api.py
@@ -22,6 +22,7 @@ from neutronclient.common import exceptions as neutron_client_exc
from neutronclient.v2_0 import client as clientv20
from oslo_concurrency import lockutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
import six
@@ -33,7 +34,6 @@ from nova.network import base_api
from nova.network import model as network_model
from nova.network.neutronv2 import constants
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova.pci import manager as pci_manager
from nova.pci import request as pci_request
diff --git a/nova/network/security_group/neutron_driver.py b/nova/network/security_group/neutron_driver.py
index 6e85f00dd3..89ff11e284 100644
--- a/nova/network/security_group/neutron_driver.py
+++ b/nova/network/security_group/neutron_driver.py
@@ -18,6 +18,7 @@ import sys
from neutronclient.common import exceptions as n_exc
from neutronclient.neutron import v2_0 as neutronv20
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
import six
from webob import exc
@@ -28,7 +29,6 @@ from nova.i18n import _, _LE, _LI, _LW
from nova.network.neutronv2 import api as neutronapi
from nova.network.security_group import security_group_base
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova import utils
diff --git a/nova/notifications.py b/nova/notifications.py
index d28cfbf8e4..a0f4dac301 100644
--- a/nova/notifications.py
+++ b/nova/notifications.py
@@ -22,6 +22,7 @@ import datetime
from oslo_config import cfg
from oslo_context import context as common_context
+from oslo_log import log
from oslo_utils import excutils
from oslo_utils import timeutils
import six
@@ -33,7 +34,6 @@ from nova.image import glance
from nova import network
from nova.network import model as network_model
from nova.objects import base as obj_base
-from nova.openstack.common import log
from nova import rpc
from nova import utils
diff --git a/nova/objects/base.py b/nova/objects/base.py
index 230275f9b8..6f399c463c 100644
--- a/nova/objects/base.py
+++ b/nova/objects/base.py
@@ -22,6 +22,7 @@ import functools
import traceback
import netaddr
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_utils import timeutils
import six
@@ -31,7 +32,6 @@ from nova import exception
from nova.i18n import _, _LE
from nova import objects
from nova.objects import fields as obj_fields
-from nova.openstack.common import log as logging
from nova.openstack.common import versionutils
from nova import utils
diff --git a/nova/objects/block_device.py b/nova/objects/block_device.py
index 0142f911b4..6d85256205 100644
--- a/nova/objects/block_device.py
+++ b/nova/objects/block_device.py
@@ -12,6 +12,8 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
+
from nova import block_device
from nova.cells import opts as cells_opts
from nova.cells import rpcapi as cells_rpcapi
@@ -21,7 +23,6 @@ from nova.i18n import _
from nova import objects
from nova.objects import base
from nova.objects import fields
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/objects/instance.py b/nova/objects/instance.py
index d975843518..17b6454893 100644
--- a/nova/objects/instance.py
+++ b/nova/objects/instance.py
@@ -15,6 +15,7 @@
import copy
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import timeutils
@@ -29,7 +30,6 @@ from nova import notifications
from nova import objects
from nova.objects import base
from nova.objects import fields
-from nova.openstack.common import log as logging
from nova import utils
diff --git a/nova/objects/instance_fault.py b/nova/objects/instance_fault.py
index de03b972db..8aa483cf41 100644
--- a/nova/objects/instance_fault.py
+++ b/nova/objects/instance_fault.py
@@ -14,6 +14,8 @@
import itertools
+from oslo_log import log as logging
+
from nova.cells import opts as cells_opts
from nova.cells import rpcapi as cells_rpcapi
from nova import db
@@ -22,7 +24,6 @@ from nova.i18n import _LE
from nova import objects
from nova.objects import base
from nova.objects import fields
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/objects/instance_info_cache.py b/nova/objects/instance_info_cache.py
index 330959cdc4..b8d9754b07 100644
--- a/nova/objects/instance_info_cache.py
+++ b/nova/objects/instance_info_cache.py
@@ -12,6 +12,8 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
+
from nova.cells import opts as cells_opts
from nova.cells import rpcapi as cells_rpcapi
from nova import db
@@ -19,7 +21,6 @@ from nova import exception
from nova.i18n import _LE
from nova.objects import base
from nova.objects import fields
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/objects/pci_device.py b/nova/objects/pci_device.py
index 384f83231c..cffd228e44 100644
--- a/nova/objects/pci_device.py
+++ b/nova/objects/pci_device.py
@@ -13,13 +13,13 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from nova import db
from nova import objects
from nova.objects import base
from nova.objects import fields
-from nova.openstack.common import log as logging
from nova import utils
diff --git a/nova/objects/service.py b/nova/objects/service.py
index 69f6837aee..626d04e413 100644
--- a/nova/objects/service.py
+++ b/nova/objects/service.py
@@ -12,13 +12,14 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
+
from nova import availability_zones
from nova import db
from nova import exception
from nova import objects
from nova.objects import base
from nova.objects import fields
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/openstack/common/cliutils.py b/nova/openstack/common/cliutils.py
index 846a3e1d4f..33b475ee1e 100644
--- a/nova/openstack/common/cliutils.py
+++ b/nova/openstack/common/cliutils.py
@@ -12,6 +12,10 @@
# License for the specific language governing permissions and limitations
# under the License.
+# W0603: Using the global statement
+# W0621: Redefining name %s from outer scope
+# pylint: disable=W0603,W0621
+
from __future__ import print_function
import getpass
diff --git a/nova/openstack/common/log.py b/nova/openstack/common/log.py
deleted file mode 100644
index b23e21f4ed..0000000000
--- a/nova/openstack/common/log.py
+++ /dev/null
@@ -1,718 +0,0 @@
-# Copyright 2011 OpenStack Foundation.
-# Copyright 2010 United States Government as represented by the
-# Administrator of the National Aeronautics and Space Administration.
-# All Rights Reserved.
-#
-# 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.
-
-"""OpenStack logging handler.
-
-This module adds to logging functionality by adding the option to specify
-a context object when calling the various log methods. If the context object
-is not specified, default formatting is used. Additionally, an instance uuid
-may be passed as part of the log message, which is intended to make it easier
-for admins to find messages related to a specific instance.
-
-It also allows setting of formatting information through conf.
-
-"""
-
-import copy
-import inspect
-import itertools
-import logging
-import logging.config
-import logging.handlers
-import os
-import socket
-import sys
-import traceback
-
-from oslo_config import cfg
-from oslo_serialization import jsonutils
-from oslo_utils import importutils
-import six
-from six import moves
-
-_PY26 = sys.version_info[0:2] == (2, 6)
-
-from nova.openstack.common._i18n import _
-from nova.openstack.common import local
-
-
-_DEFAULT_LOG_DATE_FORMAT = "%Y-%m-%d %H:%M:%S"
-
-
-common_cli_opts = [
- cfg.BoolOpt('debug',
- short='d',
- default=False,
- help='Print debugging output (set logging level to '
- 'DEBUG instead of default WARNING level).'),
- cfg.BoolOpt('verbose',
- short='v',
- default=False,
- help='Print more verbose output (set logging level to '
- 'INFO instead of default WARNING level).'),
-]
-
-logging_cli_opts = [
- cfg.StrOpt('log-config-append',
- metavar='PATH',
- deprecated_name='log-config',
- help='The name of a logging configuration file. This file '
- 'is appended to any existing logging configuration '
- 'files. For details about logging configuration files, '
- 'see the Python logging module documentation.'),
- cfg.StrOpt('log-format',
- metavar='FORMAT',
- help='DEPRECATED. '
- 'A logging.Formatter log message format string which may '
- 'use any of the available logging.LogRecord attributes. '
- 'This option is deprecated. Please use '
- 'logging_context_format_string and '
- 'logging_default_format_string instead.'),
- cfg.StrOpt('log-date-format',
- default=_DEFAULT_LOG_DATE_FORMAT,
- metavar='DATE_FORMAT',
- help='Format string for %%(asctime)s in log records. '
- 'Default: %(default)s .'),
- cfg.StrOpt('log-file',
- metavar='PATH',
- deprecated_name='logfile',
- help='(Optional) Name of log file to output to. '
- 'If no default is set, logging will go to stdout.'),
- cfg.StrOpt('log-dir',
- deprecated_name='logdir',
- help='(Optional) The base directory used for relative '
- '--log-file paths.'),
- cfg.BoolOpt('use-syslog',
- default=False,
- help='Use syslog for logging. '
- 'Existing syslog format is DEPRECATED during I, '
- 'and will change in J to honor RFC5424.'),
- cfg.BoolOpt('use-syslog-rfc-format',
- # TODO(bogdando) remove or use True after existing
- # syslog format deprecation in J
- default=False,
- help='(Optional) Enables or disables syslog rfc5424 format '
- 'for logging. If enabled, prefixes the MSG part of the '
- 'syslog message with APP-NAME (RFC5424). The '
- 'format without the APP-NAME is deprecated in I, '
- 'and will be removed in J.'),
- cfg.StrOpt('syslog-log-facility',
- default='LOG_USER',
- help='Syslog facility to receive log lines.')
-]
-
-generic_log_opts = [
- cfg.BoolOpt('use_stderr',
- default=True,
- help='Log output to standard error.')
-]
-
-DEFAULT_LOG_LEVELS = ['amqp=WARN', 'amqplib=WARN', 'boto=WARN',
- 'qpid=WARN', 'sqlalchemy=WARN', 'suds=INFO',
- 'oslo.messaging=INFO', 'iso8601=WARN',
- 'requests.packages.urllib3.connectionpool=WARN',
- 'urllib3.connectionpool=WARN', 'websocket=WARN',
- "keystonemiddleware=WARN", "routes.middleware=WARN",
- "stevedore=WARN"]
-
-log_opts = [
- cfg.StrOpt('logging_context_format_string',
- default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s '
- '%(name)s [%(request_id)s %(user_identity)s] '
- '%(instance)s%(message)s',
- help='Format string to use for log messages with context.'),
- cfg.StrOpt('logging_default_format_string',
- default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s '
- '%(name)s [-] %(instance)s%(message)s',
- help='Format string to use for log messages without context.'),
- cfg.StrOpt('logging_debug_format_suffix',
- default='%(funcName)s %(pathname)s:%(lineno)d',
- help='Data to append to log format when level is DEBUG.'),
- cfg.StrOpt('logging_exception_prefix',
- default='%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s '
- '%(instance)s',
- help='Prefix each line of exception output with this format.'),
- cfg.ListOpt('default_log_levels',
- default=DEFAULT_LOG_LEVELS,
- help='List of logger=LEVEL pairs.'),
- cfg.BoolOpt('publish_errors',
- default=False,
- help='Enables or disables publication of error events.'),
- cfg.BoolOpt('fatal_deprecations',
- default=False,
- help='Enables or disables fatal status of deprecations.'),
-
- # NOTE(mikal): there are two options here because sometimes we are handed
- # a full instance (and could include more information), and other times we
- # are just handed a UUID for the instance.
- cfg.StrOpt('instance_format',
- default='[instance: %(uuid)s] ',
- help='The format for an instance that is passed with the log '
- 'message.'),
- cfg.StrOpt('instance_uuid_format',
- default='[instance: %(uuid)s] ',
- help='The format for an instance UUID that is passed with the '
- 'log message.'),
-]
-
-CONF = cfg.CONF
-CONF.register_cli_opts(common_cli_opts)
-CONF.register_cli_opts(logging_cli_opts)
-CONF.register_opts(generic_log_opts)
-CONF.register_opts(log_opts)
-
-
-def list_opts():
- """Entry point for oslo.config-generator."""
- return [(None, copy.deepcopy(common_cli_opts)),
- (None, copy.deepcopy(logging_cli_opts)),
- (None, copy.deepcopy(generic_log_opts)),
- (None, copy.deepcopy(log_opts)),
- ]
-
-
-# our new audit level
-# NOTE(jkoelker) Since we synthesized an audit level, make the logging
-# module aware of it so it acts like other levels.
-logging.AUDIT = logging.INFO + 1
-logging.addLevelName(logging.AUDIT, 'AUDIT')
-
-
-try:
- NullHandler = logging.NullHandler
-except AttributeError: # NOTE(jkoelker) NullHandler added in Python 2.7
- class NullHandler(logging.Handler):
- def handle(self, record):
- pass
-
- def emit(self, record):
- pass
-
- def createLock(self):
- self.lock = None
-
-
-def _dictify_context(context):
- if context is None:
- return None
- if not isinstance(context, dict) and getattr(context, 'to_dict', None):
- context = context.to_dict()
- return context
-
-
-def _get_binary_name():
- return os.path.basename(inspect.stack()[-1][1])
-
-
-def _get_log_file_path(binary=None):
- logfile = CONF.log_file
- logdir = CONF.log_dir
-
- if logfile and not logdir:
- return logfile
-
- if logfile and logdir:
- return os.path.join(logdir, logfile)
-
- if logdir:
- binary = binary or _get_binary_name()
- return '%s.log' % (os.path.join(logdir, binary),)
-
- return None
-
-
-class BaseLoggerAdapter(logging.LoggerAdapter):
-
- def audit(self, msg, *args, **kwargs):
- self.log(logging.AUDIT, msg, *args, **kwargs)
-
- def isEnabledFor(self, level):
- if _PY26:
- # This method was added in python 2.7 (and it does the exact
- # same logic, so we need to do the exact same logic so that
- # python 2.6 has this capability as well).
- return self.logger.isEnabledFor(level)
- else:
- return super(BaseLoggerAdapter, self).isEnabledFor(level)
-
-
-class LazyAdapter(BaseLoggerAdapter):
- def __init__(self, name='unknown', version='unknown'):
- self._logger = None
- self.extra = {}
- self.name = name
- self.version = version
-
- @property
- def logger(self):
- if not self._logger:
- self._logger = getLogger(self.name, self.version)
- if six.PY3:
- # In Python 3, the code fails because the 'manager' attribute
- # cannot be found when using a LoggerAdapter as the
- # underlying logger. Work around this issue.
- self._logger.manager = self._logger.logger.manager
- return self._logger
-
-
-class ContextAdapter(BaseLoggerAdapter):
- warn = logging.LoggerAdapter.warning
-
- def __init__(self, logger, project_name, version_string):
- self.logger = logger
- self.project = project_name
- self.version = version_string
- self._deprecated_messages_sent = dict()
-
- @property
- def handlers(self):
- return self.logger.handlers
-
- def deprecated(self, msg, *args, **kwargs):
- """Call this method when a deprecated feature is used.
-
- If the system is configured for fatal deprecations then the message
- is logged at the 'critical' level and :class:`DeprecatedConfig` will
- be raised.
-
- Otherwise, the message will be logged (once) at the 'warn' level.
-
- :raises: :class:`DeprecatedConfig` if the system is configured for
- fatal deprecations.
-
- """
- stdmsg = _("Deprecated: %s") % msg
- if CONF.fatal_deprecations:
- self.critical(stdmsg, *args, **kwargs)
- raise DeprecatedConfig(msg=stdmsg)
-
- # Using a list because a tuple with dict can't be stored in a set.
- sent_args = self._deprecated_messages_sent.setdefault(msg, list())
-
- if args in sent_args:
- # Already logged this message, so don't log it again.
- return
-
- sent_args.append(args)
- self.warn(stdmsg, *args, **kwargs)
-
- def process(self, msg, kwargs):
- # NOTE(jecarey): If msg is not unicode, coerce it into unicode
- # before it can get to the python logging and
- # possibly cause string encoding trouble
- if not isinstance(msg, six.text_type):
- msg = six.text_type(msg)
-
- if 'extra' not in kwargs:
- kwargs['extra'] = {}
- extra = kwargs['extra']
-
- context = kwargs.pop('context', None)
- if not context:
- context = getattr(local.store, 'context', None)
- if context:
- extra.update(_dictify_context(context))
-
- instance = kwargs.pop('instance', None)
- instance_uuid = (extra.get('instance_uuid') or
- kwargs.pop('instance_uuid', None))
- instance_extra = ''
- if instance:
- instance_extra = CONF.instance_format % instance
- elif instance_uuid:
- instance_extra = (CONF.instance_uuid_format
- % {'uuid': instance_uuid})
- extra['instance'] = instance_extra
-
- extra.setdefault('user_identity', kwargs.pop('user_identity', None))
-
- extra['project'] = self.project
- extra['version'] = self.version
- extra['extra'] = extra.copy()
- return msg, kwargs
-
-
-class JSONFormatter(logging.Formatter):
- def __init__(self, fmt=None, datefmt=None):
- # NOTE(jkoelker) we ignore the fmt argument, but its still there
- # since logging.config.fileConfig passes it.
- self.datefmt = datefmt
-
- def formatException(self, ei, strip_newlines=True):
- lines = traceback.format_exception(*ei)
- if strip_newlines:
- lines = [moves.filter(
- lambda x: x,
- line.rstrip().splitlines()) for line in lines]
- lines = list(itertools.chain(*lines))
- return lines
-
- def format(self, record):
- message = {'message': record.getMessage(),
- 'asctime': self.formatTime(record, self.datefmt),
- 'name': record.name,
- 'msg': record.msg,
- 'args': record.args,
- 'levelname': record.levelname,
- 'levelno': record.levelno,
- 'pathname': record.pathname,
- 'filename': record.filename,
- 'module': record.module,
- 'lineno': record.lineno,
- 'funcname': record.funcName,
- 'created': record.created,
- 'msecs': record.msecs,
- 'relative_created': record.relativeCreated,
- 'thread': record.thread,
- 'thread_name': record.threadName,
- 'process_name': record.processName,
- 'process': record.process,
- 'traceback': None}
-
- if hasattr(record, 'extra'):
- message['extra'] = record.extra
-
- if record.exc_info:
- message['traceback'] = self.formatException(record.exc_info)
-
- return jsonutils.dumps(message)
-
-
-def _create_logging_excepthook(product_name):
- def logging_excepthook(exc_type, value, tb):
- extra = {'exc_info': (exc_type, value, tb)}
- getLogger(product_name).critical(
- "".join(traceback.format_exception_only(exc_type, value)),
- **extra)
- return logging_excepthook
-
-
-class LogConfigError(Exception):
-
- message = _('Error loading logging config %(log_config)s: %(err_msg)s')
-
- def __init__(self, log_config, err_msg):
- self.log_config = log_config
- self.err_msg = err_msg
-
- def __str__(self):
- return self.message % dict(log_config=self.log_config,
- err_msg=self.err_msg)
-
-
-def _load_log_config(log_config_append):
- try:
- logging.config.fileConfig(log_config_append,
- disable_existing_loggers=False)
- except (moves.configparser.Error, KeyError) as exc:
- raise LogConfigError(log_config_append, six.text_type(exc))
-
-
-def setup(product_name, version='unknown'):
- """Setup logging."""
- if CONF.log_config_append:
- _load_log_config(CONF.log_config_append)
- else:
- _setup_logging_from_conf(product_name, version)
- sys.excepthook = _create_logging_excepthook(product_name)
-
-
-def set_defaults(logging_context_format_string=None,
- default_log_levels=None):
- # Just in case the caller is not setting the
- # default_log_level. This is insurance because
- # we introduced the default_log_level parameter
- # later in a backwards in-compatible change
- if default_log_levels is not None:
- cfg.set_defaults(
- log_opts,
- default_log_levels=default_log_levels)
- if logging_context_format_string is not None:
- cfg.set_defaults(
- log_opts,
- logging_context_format_string=logging_context_format_string)
-
-
-def _find_facility_from_conf():
- facility_names = logging.handlers.SysLogHandler.facility_names
- facility = getattr(logging.handlers.SysLogHandler,
- CONF.syslog_log_facility,
- None)
-
- if facility is None and CONF.syslog_log_facility in facility_names:
- facility = facility_names.get(CONF.syslog_log_facility)
-
- if facility is None:
- valid_facilities = facility_names.keys()
- consts = ['LOG_AUTH', 'LOG_AUTHPRIV', 'LOG_CRON', 'LOG_DAEMON',
- 'LOG_FTP', 'LOG_KERN', 'LOG_LPR', 'LOG_MAIL', 'LOG_NEWS',
- 'LOG_AUTH', 'LOG_SYSLOG', 'LOG_USER', 'LOG_UUCP',
- 'LOG_LOCAL0', 'LOG_LOCAL1', 'LOG_LOCAL2', 'LOG_LOCAL3',
- 'LOG_LOCAL4', 'LOG_LOCAL5', 'LOG_LOCAL6', 'LOG_LOCAL7']
- valid_facilities.extend(consts)
- raise TypeError(_('syslog facility must be one of: %s') %
- ', '.join("'%s'" % fac
- for fac in valid_facilities))
-
- return facility
-
-
-class RFCSysLogHandler(logging.handlers.SysLogHandler):
- def __init__(self, *args, **kwargs):
- self.binary_name = _get_binary_name()
- # Do not use super() unless type(logging.handlers.SysLogHandler)
- # is 'type' (Python 2.7).
- # Use old style calls, if the type is 'classobj' (Python 2.6)
- logging.handlers.SysLogHandler.__init__(self, *args, **kwargs)
-
- def format(self, record):
- # Do not use super() unless type(logging.handlers.SysLogHandler)
- # is 'type' (Python 2.7).
- # Use old style calls, if the type is 'classobj' (Python 2.6)
- msg = logging.handlers.SysLogHandler.format(self, record)
- msg = self.binary_name + ' ' + msg
- return msg
-
-
-def _setup_logging_from_conf(project, version):
- log_root = getLogger(None).logger
- for handler in log_root.handlers:
- log_root.removeHandler(handler)
-
- logpath = _get_log_file_path()
- if logpath:
- filelog = logging.handlers.WatchedFileHandler(logpath)
- log_root.addHandler(filelog)
-
- if CONF.use_stderr:
- streamlog = ColorHandler()
- log_root.addHandler(streamlog)
-
- elif not logpath:
- # pass sys.stdout as a positional argument
- # python2.6 calls the argument strm, in 2.7 it's stream
- streamlog = logging.StreamHandler(sys.stdout)
- log_root.addHandler(streamlog)
-
- if CONF.publish_errors:
- handler = importutils.import_object(
- "oslo.messaging.notify.log_handler.PublishErrorsHandler",
- logging.ERROR)
- log_root.addHandler(handler)
-
- datefmt = CONF.log_date_format
- for handler in log_root.handlers:
- # NOTE(alaski): CONF.log_format overrides everything currently. This
- # should be deprecated in favor of context aware formatting.
- if CONF.log_format:
- handler.setFormatter(logging.Formatter(fmt=CONF.log_format,
- datefmt=datefmt))
- log_root.info('Deprecated: log_format is now deprecated and will '
- 'be removed in the next release')
- else:
- handler.setFormatter(ContextFormatter(project=project,
- version=version,
- datefmt=datefmt))
-
- if CONF.debug:
- log_root.setLevel(logging.DEBUG)
- elif CONF.verbose:
- log_root.setLevel(logging.INFO)
- else:
- log_root.setLevel(logging.WARNING)
-
- for pair in CONF.default_log_levels:
- mod, _sep, level_name = pair.partition('=')
- logger = logging.getLogger(mod)
- # NOTE(AAzza) in python2.6 Logger.setLevel doesn't convert string name
- # to integer code.
- if sys.version_info < (2, 7):
- level = logging.getLevelName(level_name)
- logger.setLevel(level)
- else:
- logger.setLevel(level_name)
-
- if CONF.use_syslog:
- try:
- facility = _find_facility_from_conf()
- # TODO(bogdando) use the format provided by RFCSysLogHandler
- # after existing syslog format deprecation in J
- if CONF.use_syslog_rfc_format:
- syslog = RFCSysLogHandler(address='/dev/log',
- facility=facility)
- else:
- syslog = logging.handlers.SysLogHandler(address='/dev/log',
- facility=facility)
- log_root.addHandler(syslog)
- except socket.error:
- log_root.error('Unable to add syslog handler. Verify that syslog '
- 'is running.')
-
-
-_loggers = {}
-
-
-def getLogger(name='unknown', version='unknown'):
- if name not in _loggers:
- _loggers[name] = ContextAdapter(logging.getLogger(name),
- name,
- version)
- return _loggers[name]
-
-
-def getLazyLogger(name='unknown', version='unknown'):
- """Returns lazy logger.
-
- Creates a pass-through logger that does not create the real logger
- until it is really needed and delegates all calls to the real logger
- once it is created.
- """
- return LazyAdapter(name, version)
-
-
-class WritableLogger(object):
- """A thin wrapper that responds to `write` and logs."""
-
- def __init__(self, logger, level=logging.INFO):
- self.logger = logger
- self.level = level
-
- def write(self, msg):
- self.logger.log(self.level, msg.rstrip())
-
-
-class ContextFormatter(logging.Formatter):
- """A context.RequestContext aware formatter configured through flags.
-
- The flags used to set format strings are: logging_context_format_string
- and logging_default_format_string. You can also specify
- logging_debug_format_suffix to append extra formatting if the log level is
- debug.
-
- For information about what variables are available for the formatter see:
- http://docs.python.org/library/logging.html#formatter
-
- If available, uses the context value stored in TLS - local.store.context
-
- """
-
- def __init__(self, *args, **kwargs):
- """Initialize ContextFormatter instance
-
- Takes additional keyword arguments which can be used in the message
- format string.
-
- :keyword project: project name
- :type project: string
- :keyword version: project version
- :type version: string
-
- """
-
- self.project = kwargs.pop('project', 'unknown')
- self.version = kwargs.pop('version', 'unknown')
-
- logging.Formatter.__init__(self, *args, **kwargs)
-
- def format(self, record):
- """Uses contextstring if request_id is set, otherwise default."""
-
- # NOTE(jecarey): If msg is not unicode, coerce it into unicode
- # before it can get to the python logging and
- # possibly cause string encoding trouble
- if not isinstance(record.msg, six.text_type):
- record.msg = six.text_type(record.msg)
-
- # store project info
- record.project = self.project
- record.version = self.version
-
- # store request info
- context = getattr(local.store, 'context', None)
- if context:
- d = _dictify_context(context)
- for k, v in d.items():
- setattr(record, k, v)
-
- # NOTE(sdague): default the fancier formatting params
- # to an empty string so we don't throw an exception if
- # they get used
- for key in ('instance', 'color', 'user_identity'):
- if key not in record.__dict__:
- record.__dict__[key] = ''
-
- if record.__dict__.get('request_id'):
- fmt = CONF.logging_context_format_string
- else:
- fmt = CONF.logging_default_format_string
-
- if (record.levelno == logging.DEBUG and
- CONF.logging_debug_format_suffix):
- fmt += " " + CONF.logging_debug_format_suffix
-
- if sys.version_info < (3, 2):
- self._fmt = fmt
- else:
- self._style = logging.PercentStyle(fmt)
- self._fmt = self._style._fmt
- # Cache this on the record, Logger will respect our formatted copy
- if record.exc_info:
- record.exc_text = self.formatException(record.exc_info, record)
- return logging.Formatter.format(self, record)
-
- def formatException(self, exc_info, record=None):
- """Format exception output with CONF.logging_exception_prefix."""
- if not record:
- return logging.Formatter.formatException(self, exc_info)
-
- stringbuffer = moves.StringIO()
- traceback.print_exception(exc_info[0], exc_info[1], exc_info[2],
- None, stringbuffer)
- lines = stringbuffer.getvalue().split('\n')
- stringbuffer.close()
-
- if CONF.logging_exception_prefix.find('%(asctime)') != -1:
- record.asctime = self.formatTime(record, self.datefmt)
-
- formatted_lines = []
- for line in lines:
- pl = CONF.logging_exception_prefix % record.__dict__
- fl = '%s%s' % (pl, line)
- formatted_lines.append(fl)
- return '\n'.join(formatted_lines)
-
-
-class ColorHandler(logging.StreamHandler):
- LEVEL_COLORS = {
- logging.DEBUG: '\033[00;32m', # GREEN
- logging.INFO: '\033[00;36m', # CYAN
- logging.AUDIT: '\033[01;36m', # BOLD CYAN
- logging.WARN: '\033[01;33m', # BOLD YELLOW
- logging.ERROR: '\033[01;31m', # BOLD RED
- logging.CRITICAL: '\033[01;31m', # BOLD RED
- }
-
- def format(self, record):
- record.color = self.LEVEL_COLORS[record.levelno]
- return logging.StreamHandler.format(self, record)
-
-
-class DeprecatedConfig(Exception):
- message = _("Fatal call to deprecated config: %(msg)s")
-
- def __init__(self, msg):
- super(Exception, self).__init__(self.message % dict(msg=msg))
diff --git a/nova/pci/manager.py b/nova/pci/manager.py
index 22d3960d53..ea11ae93a3 100644
--- a/nova/pci/manager.py
+++ b/nova/pci/manager.py
@@ -16,13 +16,14 @@
import collections
+from oslo_log import log as logging
+
from nova.compute import task_states
from nova.compute import vm_states
from nova import context
from nova import exception
from nova.i18n import _LW
from nova import objects
-from nova.openstack.common import log as logging
from nova.pci import device
from nova.pci import stats
from nova.virt import hardware
diff --git a/nova/pci/request.py b/nova/pci/request.py
index 82bdcd5852..3251033d93 100644
--- a/nova/pci/request.py
+++ b/nova/pci/request.py
@@ -40,12 +40,12 @@ import copy
import jsonschema
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
import six
from nova import exception
from nova import objects
-from nova.openstack.common import log as logging
from nova.pci import utils
pci_alias_opts = [
diff --git a/nova/pci/stats.py b/nova/pci/stats.py
index 37c8b39dbb..4a065ba5d7 100644
--- a/nova/pci/stats.py
+++ b/nova/pci/stats.py
@@ -16,9 +16,10 @@
import copy
+from oslo_log import log as logging
+
from nova import exception
from nova.i18n import _LE
-from nova.openstack.common import log as logging
from nova.pci import utils
from nova.pci import whitelist
diff --git a/nova/pci/utils.py b/nova/pci/utils.py
index cfc5cc036a..736e80dbab 100644
--- a/nova/pci/utils.py
+++ b/nova/pci/utils.py
@@ -19,9 +19,10 @@ import glob
import os
import re
+from oslo_log import log as logging
+
from nova import exception
from nova.i18n import _LE
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/pci/whitelist.py b/nova/pci/whitelist.py
index 74de26dd78..a4c4eae815 100644
--- a/nova/pci/whitelist.py
+++ b/nova/pci/whitelist.py
@@ -15,11 +15,11 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from nova import exception
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova.pci import devspec
pci_opts = [cfg.MultiStrOpt('pci_passthrough_whitelist',
diff --git a/nova/quota.py b/nova/quota.py
index b90483f8cd..d325df4ffe 100644
--- a/nova/quota.py
+++ b/nova/quota.py
@@ -19,6 +19,7 @@
import datetime
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import importutils
from oslo_utils import timeutils
import six
@@ -27,7 +28,6 @@ from nova import db
from nova import exception
from nova.i18n import _LE
from nova import objects
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/scheduler/client/report.py b/nova/scheduler/client/report.py
index 426147956a..4b2c95531a 100644
--- a/nova/scheduler/client/report.py
+++ b/nova/scheduler/client/report.py
@@ -13,11 +13,11 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
from nova import conductor
from nova import exception
from nova.i18n import _LI
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/scheduler/filter_scheduler.py b/nova/scheduler/filter_scheduler.py
index c24687c0a1..93fd395c3b 100644
--- a/nova/scheduler/filter_scheduler.py
+++ b/nova/scheduler/filter_scheduler.py
@@ -22,10 +22,10 @@ Weighing Functions.
import random
from oslo_config import cfg
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova import rpc
from nova.scheduler import driver
from nova.scheduler import scheduler_options
diff --git a/nova/scheduler/filters/affinity_filter.py b/nova/scheduler/filters/affinity_filter.py
index e8a132552e..c5dbc7c753 100644
--- a/nova/scheduler/filters/affinity_filter.py
+++ b/nova/scheduler/filters/affinity_filter.py
@@ -16,10 +16,10 @@
import netaddr
+from oslo_log import log as logging
import six
from nova.compute import api as compute
-from nova.openstack.common import log as logging
from nova.scheduler import filters
LOG = logging.getLogger(__name__)
diff --git a/nova/scheduler/filters/aggregate_image_properties_isolation.py b/nova/scheduler/filters/aggregate_image_properties_isolation.py
index 4fad37bd29..04e8f549bb 100644
--- a/nova/scheduler/filters/aggregate_image_properties_isolation.py
+++ b/nova/scheduler/filters/aggregate_image_properties_isolation.py
@@ -14,8 +14,8 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
-from nova.openstack.common import log as logging
from nova.scheduler import filters
from nova.scheduler.filters import utils
diff --git a/nova/scheduler/filters/aggregate_instance_extra_specs.py b/nova/scheduler/filters/aggregate_instance_extra_specs.py
index 545355ed74..f5043a2ced 100644
--- a/nova/scheduler/filters/aggregate_instance_extra_specs.py
+++ b/nova/scheduler/filters/aggregate_instance_extra_specs.py
@@ -14,7 +14,8 @@
# License for the specific language governing permissions and limitations
# under the License.
-from nova.openstack.common import log as logging
+from oslo_log import log as logging
+
from nova.scheduler import filters
from nova.scheduler.filters import extra_specs_ops
from nova.scheduler.filters import utils
diff --git a/nova/scheduler/filters/aggregate_multitenancy_isolation.py b/nova/scheduler/filters/aggregate_multitenancy_isolation.py
index 6b08a4ac07..a970ed66a3 100644
--- a/nova/scheduler/filters/aggregate_multitenancy_isolation.py
+++ b/nova/scheduler/filters/aggregate_multitenancy_isolation.py
@@ -13,7 +13,8 @@
# License for the specific language governing permissions and limitations
# under the License.
-from nova.openstack.common import log as logging
+from oslo_log import log as logging
+
from nova.scheduler import filters
from nova.scheduler.filters import utils
diff --git a/nova/scheduler/filters/availability_zone_filter.py b/nova/scheduler/filters/availability_zone_filter.py
index 534474fded..e08fb6bbf4 100644
--- a/nova/scheduler/filters/availability_zone_filter.py
+++ b/nova/scheduler/filters/availability_zone_filter.py
@@ -14,8 +14,8 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
-from nova.openstack.common import log as logging
from nova.scheduler import filters
from nova.scheduler.filters import utils
diff --git a/nova/scheduler/filters/compute_capabilities_filter.py b/nova/scheduler/filters/compute_capabilities_filter.py
index aa3994671d..9e7000c642 100644
--- a/nova/scheduler/filters/compute_capabilities_filter.py
+++ b/nova/scheduler/filters/compute_capabilities_filter.py
@@ -13,10 +13,10 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
from oslo_serialization import jsonutils
import six
-from nova.openstack.common import log as logging
from nova.scheduler import filters
from nova.scheduler.filters import extra_specs_ops
diff --git a/nova/scheduler/filters/compute_filter.py b/nova/scheduler/filters/compute_filter.py
index 0dbfcf2657..ec754c098a 100644
--- a/nova/scheduler/filters/compute_filter.py
+++ b/nova/scheduler/filters/compute_filter.py
@@ -14,9 +14,9 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.scheduler import filters
from nova import servicegroup
diff --git a/nova/scheduler/filters/core_filter.py b/nova/scheduler/filters/core_filter.py
index 9d00917c87..52e11adaba 100644
--- a/nova/scheduler/filters/core_filter.py
+++ b/nova/scheduler/filters/core_filter.py
@@ -16,9 +16,9 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.scheduler import filters
from nova.scheduler.filters import utils
diff --git a/nova/scheduler/filters/disk_filter.py b/nova/scheduler/filters/disk_filter.py
index c2e53f4c3a..6b805cf9a9 100644
--- a/nova/scheduler/filters/disk_filter.py
+++ b/nova/scheduler/filters/disk_filter.py
@@ -14,9 +14,9 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.scheduler import filters
from nova.scheduler.filters import utils
diff --git a/nova/scheduler/filters/exact_core_filter.py b/nova/scheduler/filters/exact_core_filter.py
index 86c3193e05..800ab8a7ec 100644
--- a/nova/scheduler/filters/exact_core_filter.py
+++ b/nova/scheduler/filters/exact_core_filter.py
@@ -14,9 +14,9 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.scheduler import filters
LOG = logging.getLogger(__name__)
diff --git a/nova/scheduler/filters/exact_disk_filter.py b/nova/scheduler/filters/exact_disk_filter.py
index 543eb4c75e..7a8c5b5889 100644
--- a/nova/scheduler/filters/exact_disk_filter.py
+++ b/nova/scheduler/filters/exact_disk_filter.py
@@ -13,7 +13,8 @@
# License for the specific language governing permissions and limitations
# under the License.
-from nova.openstack.common import log as logging
+from oslo_log import log as logging
+
from nova.scheduler import filters
LOG = logging.getLogger(__name__)
diff --git a/nova/scheduler/filters/exact_ram_filter.py b/nova/scheduler/filters/exact_ram_filter.py
index efd845aa6b..71aab99cd7 100644
--- a/nova/scheduler/filters/exact_ram_filter.py
+++ b/nova/scheduler/filters/exact_ram_filter.py
@@ -13,7 +13,8 @@
# License for the specific language governing permissions and limitations
# under the License.
-from nova.openstack.common import log as logging
+from oslo_log import log as logging
+
from nova.scheduler import filters
LOG = logging.getLogger(__name__)
diff --git a/nova/scheduler/filters/image_props_filter.py b/nova/scheduler/filters/image_props_filter.py
index 05ed90d51e..b43d33588d 100644
--- a/nova/scheduler/filters/image_props_filter.py
+++ b/nova/scheduler/filters/image_props_filter.py
@@ -16,10 +16,11 @@
# under the License.
from distutils import versionpredicate
+from oslo_log import log as logging
+
from nova.compute import arch
from nova.compute import hv_type
from nova.compute import vm_mode
-from nova.openstack.common import log as logging
from nova.scheduler import filters
from nova import utils
diff --git a/nova/scheduler/filters/io_ops_filter.py b/nova/scheduler/filters/io_ops_filter.py
index f721c76e15..5c51c41dbd 100644
--- a/nova/scheduler/filters/io_ops_filter.py
+++ b/nova/scheduler/filters/io_ops_filter.py
@@ -14,9 +14,9 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.scheduler import filters
from nova.scheduler.filters import utils
diff --git a/nova/scheduler/filters/metrics_filter.py b/nova/scheduler/filters/metrics_filter.py
index a520410194..2968452747 100644
--- a/nova/scheduler/filters/metrics_filter.py
+++ b/nova/scheduler/filters/metrics_filter.py
@@ -14,8 +14,8 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
-from nova.openstack.common import log as logging
from nova.scheduler import filters
from nova.scheduler import utils
diff --git a/nova/scheduler/filters/num_instances_filter.py b/nova/scheduler/filters/num_instances_filter.py
index b596a0ce62..607323d72f 100644
--- a/nova/scheduler/filters/num_instances_filter.py
+++ b/nova/scheduler/filters/num_instances_filter.py
@@ -14,9 +14,9 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.scheduler import filters
from nova.scheduler.filters import utils
diff --git a/nova/scheduler/filters/pci_passthrough_filter.py b/nova/scheduler/filters/pci_passthrough_filter.py
index 5f10cd8038..c245d0ae9e 100644
--- a/nova/scheduler/filters/pci_passthrough_filter.py
+++ b/nova/scheduler/filters/pci_passthrough_filter.py
@@ -13,7 +13,8 @@
# License for the specific language governing permissions and limitations
# under the License.
-from nova.openstack.common import log as logging
+from oslo_log import log as logging
+
from nova.scheduler import filters
LOG = logging.getLogger(__name__)
diff --git a/nova/scheduler/filters/ram_filter.py b/nova/scheduler/filters/ram_filter.py
index 1ebf9d15f7..60fb6c0442 100644
--- a/nova/scheduler/filters/ram_filter.py
+++ b/nova/scheduler/filters/ram_filter.py
@@ -15,9 +15,9 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.scheduler import filters
from nova.scheduler.filters import utils
diff --git a/nova/scheduler/filters/retry_filter.py b/nova/scheduler/filters/retry_filter.py
index e51c99c2d5..d2f715e75b 100644
--- a/nova/scheduler/filters/retry_filter.py
+++ b/nova/scheduler/filters/retry_filter.py
@@ -13,7 +13,8 @@
# License for the specific language governing permissions and limitations
# under the License.
-from nova.openstack.common import log as logging
+from oslo_log import log as logging
+
from nova.scheduler import filters
LOG = logging.getLogger(__name__)
diff --git a/nova/scheduler/filters/trusted_filter.py b/nova/scheduler/filters/trusted_filter.py
index 1df1ecf143..4b1e44afe0 100644
--- a/nova/scheduler/filters/trusted_filter.py
+++ b/nova/scheduler/filters/trusted_filter.py
@@ -44,13 +44,13 @@ the Open Attestation project at:
"""
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import timeutils
import requests
from nova import context
from nova import objects
-from nova.openstack.common import log as logging
from nova.scheduler import filters
LOG = logging.getLogger(__name__)
diff --git a/nova/scheduler/filters/utils.py b/nova/scheduler/filters/utils.py
index c9f34c1025..161043af21 100644
--- a/nova/scheduler/filters/utils.py
+++ b/nova/scheduler/filters/utils.py
@@ -16,9 +16,10 @@
import collections
+from oslo_log import log as logging
+
from nova.i18n import _LI
from nova import objects
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/scheduler/host_manager.py b/nova/scheduler/host_manager.py
index c8b6f859e5..4368f007f8 100644
--- a/nova/scheduler/host_manager.py
+++ b/nova/scheduler/host_manager.py
@@ -22,6 +22,7 @@ import UserDict
import iso8601
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import timeutils
@@ -30,7 +31,6 @@ from nova.compute import vm_states
from nova import exception
from nova.i18n import _, _LI, _LW
from nova import objects
-from nova.openstack.common import log as logging
from nova.pci import stats as pci_stats
from nova.scheduler import filters
from nova.scheduler import weights
@@ -344,7 +344,7 @@ class HostManager(object):
ignored_hosts.append(host)
ignored_hosts_str = ', '.join(ignored_hosts)
msg = _('Host filter ignoring hosts: %s')
- LOG.audit(msg % ignored_hosts_str)
+ LOG.info(msg % ignored_hosts_str)
def _match_forced_hosts(host_map, hosts_to_force):
forced_hosts = []
@@ -360,7 +360,7 @@ class HostManager(object):
forced_hosts_str = ', '.join(hosts_to_force)
msg = _("No hosts matched due to not matching "
"'force_hosts' value of '%s'")
- LOG.audit(msg % forced_hosts_str)
+ LOG.info(msg % forced_hosts_str)
def _match_forced_nodes(host_map, nodes_to_force):
forced_nodes = []
@@ -376,7 +376,7 @@ class HostManager(object):
forced_nodes_str = ', '.join(nodes_to_force)
msg = _("No nodes matched due to not matching "
"'force_nodes' value of '%s'")
- LOG.audit(msg % forced_nodes_str)
+ LOG.info(msg % forced_nodes_str)
if filter_class_names is None:
filters = self.default_filters
diff --git a/nova/scheduler/ironic_host_manager.py b/nova/scheduler/ironic_host_manager.py
index cae1cef801..8c53115b32 100644
--- a/nova/scheduler/ironic_host_manager.py
+++ b/nova/scheduler/ironic_host_manager.py
@@ -23,9 +23,9 @@ subdivided into multiple instances.
"""
import iso8601
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import timeutils
-from nova.openstack.common import log as logging
from nova.scheduler import host_manager
host_manager_opts = [
diff --git a/nova/scheduler/manager.py b/nova/scheduler/manager.py
index 1599e31ce1..ddce05fb2d 100644
--- a/nova/scheduler/manager.py
+++ b/nova/scheduler/manager.py
@@ -20,6 +20,7 @@ Scheduler Service
"""
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_serialization import jsonutils
from oslo_utils import importutils
@@ -27,7 +28,6 @@ from oslo_utils import importutils
from nova import exception
from nova import manager
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common import periodic_task
from nova import quota
diff --git a/nova/scheduler/scheduler_options.py b/nova/scheduler/scheduler_options.py
index dca38afb34..1d5111fa42 100644
--- a/nova/scheduler/scheduler_options.py
+++ b/nova/scheduler/scheduler_options.py
@@ -24,12 +24,12 @@ import datetime
import os
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import excutils
from oslo_utils import timeutils
from nova.i18n import _LE
-from nova.openstack.common import log as logging
scheduler_json_config_location_opt = cfg.StrOpt(
diff --git a/nova/scheduler/utils.py b/nova/scheduler/utils.py
index c87796b625..591af44683 100644
--- a/nova/scheduler/utils.py
+++ b/nova/scheduler/utils.py
@@ -19,6 +19,7 @@ import functools
import sys
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_serialization import jsonutils
@@ -30,7 +31,6 @@ from nova import notifications
from nova import objects
from nova.objects import base as obj_base
from nova.objects import instance as instance_obj
-from nova.openstack.common import log as logging
from nova import rpc
diff --git a/nova/service.py b/nova/service.py
index ad3731a397..ac851a3b77 100644
--- a/nova/service.py
+++ b/nova/service.py
@@ -23,6 +23,7 @@ import sys
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_utils import importutils
@@ -33,7 +34,6 @@ from nova import debugger
from nova import exception
from nova.i18n import _, _LE, _LI, _LW
from nova.objects import base as objects_base
-from nova.openstack.common import log as logging
from nova.openstack.common import service
from nova import rpc
from nova import servicegroup
diff --git a/nova/servicegroup/api.py b/nova/servicegroup/api.py
index 07dcec13ba..cce039aa8f 100644
--- a/nova/servicegroup/api.py
+++ b/nova/servicegroup/api.py
@@ -17,10 +17,10 @@
"""Define APIs for the servicegroup access."""
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import importutils
from nova.i18n import _, _LW
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
_default_driver = 'db'
diff --git a/nova/servicegroup/drivers/db.py b/nova/servicegroup/drivers/db.py
index 4a14259b69..82ce6d3f0a 100644
--- a/nova/servicegroup/drivers/db.py
+++ b/nova/servicegroup/drivers/db.py
@@ -14,13 +14,13 @@
# limitations under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import timeutils
import six
from nova import conductor
from nova import context
from nova.i18n import _, _LE
-from nova.openstack.common import log as logging
from nova.servicegroup import api
from nova.servicegroup.drivers import base
diff --git a/nova/servicegroup/drivers/mc.py b/nova/servicegroup/drivers/mc.py
index 0534ceb973..9c0ea83b95 100644
--- a/nova/servicegroup/drivers/mc.py
+++ b/nova/servicegroup/drivers/mc.py
@@ -18,12 +18,12 @@
# limitations under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import timeutils
from nova import conductor
from nova import context
from nova.i18n import _, _LE
-from nova.openstack.common import log as logging
from nova.openstack.common import memorycache
from nova.servicegroup import api
from nova.servicegroup.drivers import base
diff --git a/nova/servicegroup/drivers/zk.py b/nova/servicegroup/drivers/zk.py
index 671f23720f..2c7866a15b 100644
--- a/nova/servicegroup/drivers/zk.py
+++ b/nova/servicegroup/drivers/zk.py
@@ -18,11 +18,11 @@ import os
import eventlet
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import importutils
from nova import exception
from nova.i18n import _LE, _LW
-from nova.openstack.common import log as logging
from nova.openstack.common import loopingcall
from nova.servicegroup.drivers import base
diff --git a/nova/storage/linuxscsi.py b/nova/storage/linuxscsi.py
index 284cef4d10..ed30462ec0 100644
--- a/nova/storage/linuxscsi.py
+++ b/nova/storage/linuxscsi.py
@@ -15,9 +15,9 @@
"""Generic linux scsi subsystem utilities."""
from oslo_concurrency import processutils
+from oslo_log import log as logging
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.openstack.common import loopingcall
from nova import utils
diff --git a/nova/test.py b/nova/test.py
index 3df3184d03..b82506db0b 100644
--- a/nova/test.py
+++ b/nova/test.py
@@ -26,7 +26,7 @@ eventlet.monkey_patch(os=False)
import copy
import inspect
-import logging
+import logging as std_logging
import mock
import os
@@ -34,6 +34,8 @@ import fixtures
from oslo_concurrency import lockutils
from oslo_config import cfg
from oslo_config import fixture as config_fixture
+from oslo_log.fixture import logging_error as log_fixture
+from oslo_log import log as logging
from oslo_utils import timeutils
from oslotest import moxstubout
import six
@@ -44,8 +46,6 @@ from nova import db
from nova.network import manager as network_manager
from nova import objects
from nova.objects import base as objects_base
-from nova.openstack.common.fixture import logging as log_fixture
-from nova.openstack.common import log as nova_logging
from nova.tests import fixtures as nova_fixtures
from nova.tests.unit import conf_fixture
from nova.tests.unit import policy_fixture
@@ -54,9 +54,10 @@ from nova import utils
CONF = cfg.CONF
CONF.import_opt('enabled', 'nova.api.openstack', group='osapi_v3')
-CONF.set_override('use_stderr', False)
-nova_logging.setup('nova')
+logging.register_options(CONF)
+CONF.set_override('use_stderr', False)
+logging.setup(CONF, 'nova')
# NOTE(comstud): Make sure we have all of the objects loaded. We do this
# at module import time, because we may be using mock decorators in our
@@ -100,7 +101,7 @@ class TestingException(Exception):
pass
-class NullHandler(logging.Handler):
+class NullHandler(std_logging.Handler):
"""custom default NullHandler to attempt to format the record.
Used in conjunction with
diff --git a/nova/tests/fixtures.py b/nova/tests/fixtures.py
index c854eaf424..e65dc3a819 100644
--- a/nova/tests/fixtures.py
+++ b/nova/tests/fixtures.py
@@ -18,7 +18,7 @@
from __future__ import absolute_import
import gettext
-import logging
+import logging as std_logging
import os
import uuid
import warnings
@@ -66,7 +66,7 @@ class TranslationFixture(fixtures.Fixture):
self.gettext_patcher = self.useFixture(gettext_fixture)
-class NullHandler(logging.Handler):
+class NullHandler(std_logging.Handler):
"""custom default NullHandler to attempt to format the record.
Used in conjunction with
@@ -114,14 +114,14 @@ class StandardLogging(fixtures.Fixture):
super(StandardLogging, self).setUp()
# set root logger to debug
- root = logging.getLogger()
- root.setLevel(logging.DEBUG)
+ root = std_logging.getLogger()
+ root.setLevel(std_logging.DEBUG)
# supports collecting debug level for local runs
if os.environ.get('OS_DEBUG') in _TRUE_VALUES:
- level = logging.DEBUG
+ level = std_logging.DEBUG
else:
- level = logging.INFO
+ level = std_logging.INFO
# Collect logs
fs = '%(asctime)s %(levelname)s [%(name)s] %(message)s'
@@ -132,15 +132,15 @@ class StandardLogging(fixtures.Fixture):
# to the bottom of.
root.handlers[0].setLevel(level)
- if level > logging.DEBUG:
+ if level > std_logging.DEBUG:
# Just attempt to format debug level logs, but don't save them
handler = NullHandler()
self.useFixture(fixtures.LogHandler(handler, nuke_handlers=False))
- handler.setLevel(logging.DEBUG)
+ handler.setLevel(std_logging.DEBUG)
# Don't log every single DB migration step
- logging.getLogger(
- 'migrate.versioning.api').setLevel(logging.WARNING)
+ std_logging.getLogger(
+ 'migrate.versioning.api').setLevel(std_logging.WARNING)
class OutputStreamCapture(fixtures.Fixture):
diff --git a/nova/tests/functional/api/client.py b/nova/tests/functional/api/client.py
index ed542c9d92..9444020c60 100644
--- a/nova/tests/functional/api/client.py
+++ b/nova/tests/functional/api/client.py
@@ -14,10 +14,10 @@
import urllib
+from oslo_log import log as logging
from oslo_serialization import jsonutils
import requests
-from nova.openstack.common import log as logging
from nova.tests.unit.image import fake
diff --git a/nova/tests/functional/integrated_helpers.py b/nova/tests/functional/integrated_helpers.py
index 352325280d..4ba139173a 100644
--- a/nova/tests/functional/integrated_helpers.py
+++ b/nova/tests/functional/integrated_helpers.py
@@ -22,10 +22,10 @@ import string
import uuid
from oslo_config import cfg
+from oslo_log import log as logging
from nova import crypto
import nova.image.glance
-from nova.openstack.common import log as logging
from nova import service
from nova import test
from nova.tests.functional.api import client
diff --git a/nova/tests/functional/test_api_samples.py b/nova/tests/functional/test_api_samples.py
index 2fc306e073..8e3039924c 100644
--- a/nova/tests/functional/test_api_samples.py
+++ b/nova/tests/functional/test_api_samples.py
@@ -24,6 +24,7 @@ import uuid as uuid_lib
import mock
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import importutils
from oslo_utils import timeutils
@@ -48,7 +49,6 @@ from nova import exception
from nova.network import api as network_api
from nova.network.neutronv2 import api as neutron_api # noqa - only for cfg
from nova import objects
-from nova.openstack.common import log as logging
import nova.quota
from nova.servicegroup import api as service_group_api
from nova import test
diff --git a/nova/tests/functional/test_extensions.py b/nova/tests/functional/test_extensions.py
index 42ff64277f..6581fe8ace 100644
--- a/nova/tests/functional/test_extensions.py
+++ b/nova/tests/functional/test_extensions.py
@@ -14,9 +14,9 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
# Import extensions to pull in osapi_compute_extension CONF option used below.
-from nova.openstack.common import log as logging
from nova.tests.functional import integrated_helpers
CONF = cfg.CONF
diff --git a/nova/tests/functional/test_login.py b/nova/tests/functional/test_login.py
index fb01ddc251..3d1dbdedc2 100644
--- a/nova/tests/functional/test_login.py
+++ b/nova/tests/functional/test_login.py
@@ -13,8 +13,8 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
-from nova.openstack.common import log as logging
from nova.tests.functional.api import client
from nova.tests.functional import integrated_helpers
diff --git a/nova/tests/functional/test_servers.py b/nova/tests/functional/test_servers.py
index a9cd9c3703..e15442c2ad 100644
--- a/nova/tests/functional/test_servers.py
+++ b/nova/tests/functional/test_servers.py
@@ -17,11 +17,11 @@ import datetime
import time
import zlib
+from oslo_log import log as logging
from oslo_utils import timeutils
from nova import context
from nova import exception
-from nova.openstack.common import log as logging
from nova.tests.functional.api import client
from nova.tests.functional import integrated_helpers
from nova.tests.unit import fake_network
diff --git a/nova/tests/unit/api/ec2/test_cloud.py b/nova/tests/unit/api/ec2/test_cloud.py
index 222a0c3f05..9ad9fb8925 100644
--- a/nova/tests/unit/api/ec2/test_cloud.py
+++ b/nova/tests/unit/api/ec2/test_cloud.py
@@ -28,6 +28,7 @@ import fixtures
import iso8601
import mock
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import timeutils
from nova.api.ec2 import cloud
@@ -51,7 +52,6 @@ from nova.network import model
from nova.network.neutronv2 import api as neutronapi
from nova import objects
from nova.objects import base as obj_base
-from nova.openstack.common import log as logging
from nova.openstack.common import policy as common_policy
from nova.openstack.common import uuidutils
from nova import policy
diff --git a/nova/tests/unit/compute/test_compute.py b/nova/tests/unit/compute/test_compute.py
index 968e843f78..dbe3e705c5 100644
--- a/nova/tests/unit/compute/test_compute.py
+++ b/nova/tests/unit/compute/test_compute.py
@@ -30,6 +30,7 @@ from eventlet import greenthread
import mock
from mox3 import mox
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_serialization import jsonutils
from oslo_utils import importutils
@@ -65,7 +66,6 @@ from nova.network.security_group import openstack_driver
from nova import objects
from nova.objects import block_device as block_device_obj
from nova.objects import instance as instance_obj
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova import policy
from nova import quota
diff --git a/nova/tests/unit/db/test_migrations.py b/nova/tests/unit/db/test_migrations.py
index 22a9240f18..63985d3992 100644
--- a/nova/tests/unit/db/test_migrations.py
+++ b/nova/tests/unit/db/test_migrations.py
@@ -33,6 +33,9 @@ For postgres on Ubuntu this can be done with the following commands::
"""
import glob
+# NOTE(dhellmann): Use stdlib logging instead of oslo.log because we
+# need to call methods on the logger that are not exposed through the
+# adapter provided by oslo.log.
import logging
import os
diff --git a/nova/tests/unit/fake_processutils.py b/nova/tests/unit/fake_processutils.py
index d905909a07..d1d2e80110 100644
--- a/nova/tests/unit/fake_processutils.py
+++ b/nova/tests/unit/fake_processutils.py
@@ -18,10 +18,9 @@ import re
from eventlet import greenthread
from oslo_concurrency import processutils
+from oslo_log import log as logging
import six
-from nova.openstack.common import log as logging
-
LOG = logging.getLogger(__name__)
_fake_execute_repliers = []
diff --git a/nova/tests/unit/fake_volume.py b/nova/tests/unit/fake_volume.py
index df34417317..f2d3f40dab 100644
--- a/nova/tests/unit/fake_volume.py
+++ b/nova/tests/unit/fake_volume.py
@@ -15,10 +15,10 @@
import uuid
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import timeutils
from nova import exception
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/tests/unit/image/fake.py b/nova/tests/unit/image/fake.py
index 12bb25e7d5..8ff9f3306e 100644
--- a/nova/tests/unit/image/fake.py
+++ b/nova/tests/unit/image/fake.py
@@ -21,11 +21,11 @@ import datetime
import uuid
from oslo_config import cfg
+from oslo_log import log as logging
from nova.compute import arch
from nova import exception
import nova.image.glance
-from nova.openstack.common import log as logging
CONF = cfg.CONF
CONF.import_opt('null_kernel', 'nova.compute.api')
diff --git a/nova/tests/unit/network/test_linux_net.py b/nova/tests/unit/network/test_linux_net.py
index e824541292..02beed81a6 100644
--- a/nova/tests/unit/network/test_linux_net.py
+++ b/nova/tests/unit/network/test_linux_net.py
@@ -23,6 +23,7 @@ import mock
from mox3 import mox
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import timeutils
@@ -33,7 +34,6 @@ from nova.network import driver
from nova.network import linux_net
from nova import objects
from nova.openstack.common import fileutils
-from nova.openstack.common import log as logging
from nova import test
from nova import utils
diff --git a/nova/tests/unit/network/test_manager.py b/nova/tests/unit/network/test_manager.py
index ec5445c506..2cee9243e6 100644
--- a/nova/tests/unit/network/test_manager.py
+++ b/nova/tests/unit/network/test_manager.py
@@ -24,6 +24,7 @@ import netaddr
from oslo_concurrency import processutils
from oslo_config import cfg
from oslo_db import exception as db_exc
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_utils import importutils
from oslo_utils import netutils
@@ -41,7 +42,6 @@ from nova.network import model as net_model
from nova import objects
from nova.objects import quotas as quotas_obj
from nova.objects import virtual_interface as vif_obj
-from nova.openstack.common import log as logging
from nova import quota
from nova import test
from nova.tests.unit import fake_instance
diff --git a/nova/tests/unit/objects/test_objects.py b/nova/tests/unit/objects/test_objects.py
index 7ca451fa8f..217b69613a 100644
--- a/nova/tests/unit/objects/test_objects.py
+++ b/nova/tests/unit/objects/test_objects.py
@@ -21,6 +21,7 @@ import os
import pprint
import mock
+from oslo_log import log
from oslo_serialization import jsonutils
from oslo_utils import timeutils
import six
@@ -32,7 +33,6 @@ from nova import exception
from nova import objects
from nova.objects import base
from nova.objects import fields
-from nova.openstack.common import log
from nova import rpc
from nova import test
from nova.tests.unit import fake_notifier
diff --git a/nova/tests/unit/test_fixtures.py b/nova/tests/unit/test_fixtures.py
index 63cd10cc59..515b5c54d7 100644
--- a/nova/tests/unit/test_fixtures.py
+++ b/nova/tests/unit/test_fixtures.py
@@ -14,11 +14,11 @@
# License for the specific language governing permissions and limitations
# under the License.
-import logging
import sys
import fixtures as fx
from oslo_config import cfg
+from oslo_log import log as logging
import testtools
from nova.db.sqlalchemy import api as session
diff --git a/nova/tests/unit/test_hacking.py b/nova/tests/unit/test_hacking.py
index 1a8911b9e3..145fd987b4 100644
--- a/nova/tests/unit/test_hacking.py
+++ b/nova/tests/unit/test_hacking.py
@@ -252,11 +252,8 @@ class HackingTestCase(test.NoDBTestCase):
'exception']
levels = ['_LI', '_LW', '_LE', '_LC']
debug = "LOG.debug('OK')"
- audit = "LOG.info(_LI('OK'))"
self.assertEqual(
0, len(list(checks.validate_log_translations(debug, debug, 'f'))))
- self.assertEqual(
- 0, len(list(checks.validate_log_translations(audit, audit, 'f'))))
for log in logs:
bad = 'LOG.%s("Bad")' % log
self.assertEqual(1,
diff --git a/nova/tests/unit/test_linuxscsi.py b/nova/tests/unit/test_linuxscsi.py
index 432ca468d0..45d6212a80 100644
--- a/nova/tests/unit/test_linuxscsi.py
+++ b/nova/tests/unit/test_linuxscsi.py
@@ -14,8 +14,8 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
-from nova.openstack.common import log as logging
from nova.storage import linuxscsi
from nova import test
from nova import utils
diff --git a/nova/tests/unit/test_test.py b/nova/tests/unit/test_test.py
index 4d63e105b6..1e7b8c8048 100644
--- a/nova/tests/unit/test_test.py
+++ b/nova/tests/unit/test_test.py
@@ -17,9 +17,9 @@
"""Tests for the testing base code."""
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
-from nova.openstack.common import log as logging
from nova import rpc
from nova import test
from nova.tests import fixtures
diff --git a/nova/tests/unit/virt/libvirt/test_imagecache.py b/nova/tests/unit/virt/libvirt/test_imagecache.py
index 21bcdb93f0..52ac443e72 100644
--- a/nova/tests/unit/virt/libvirt/test_imagecache.py
+++ b/nova/tests/unit/virt/libvirt/test_imagecache.py
@@ -23,6 +23,8 @@ import time
import mock
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import formatters
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import importutils
@@ -30,7 +32,6 @@ from nova import conductor
from nova import context
from nova import db
from nova import objects
-from nova.openstack.common import log as logging
from nova import test
from nova.tests.unit import fake_instance
from nova import utils
@@ -48,7 +49,7 @@ def intercept_log_messages():
mylog = logging.getLogger('nova')
stream = cStringIO.StringIO()
handler = logging.logging.StreamHandler(stream)
- handler.setFormatter(logging.ContextFormatter())
+ handler.setFormatter(formatters.ContextFormatter())
mylog.logger.addHandler(handler)
yield stream
finally:
diff --git a/nova/tests/unit/virt/libvirt/test_rbd.py b/nova/tests/unit/virt/libvirt/test_rbd.py
index bcbdc25f59..0a36e57914 100644
--- a/nova/tests/unit/virt/libvirt/test_rbd.py
+++ b/nova/tests/unit/virt/libvirt/test_rbd.py
@@ -12,9 +12,9 @@
import mock
+from oslo_log import log as logging
from nova import exception
-from nova.openstack.common import log as logging
from nova import test
from nova import utils
from nova.virt.libvirt import rbd_utils
diff --git a/nova/tests/unit/virt/test_virt_drivers.py b/nova/tests/unit/virt/test_virt_drivers.py
index 6f498c0088..07fc30a8c2 100644
--- a/nova/tests/unit/virt/test_virt_drivers.py
+++ b/nova/tests/unit/virt/test_virt_drivers.py
@@ -19,6 +19,7 @@ import traceback
import fixtures
import mock
import netaddr
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import importutils
from oslo_utils import timeutils
@@ -28,7 +29,6 @@ from nova.compute import manager
from nova.console import type as ctype
from nova import exception
from nova import objects
-from nova.openstack.common import log as logging
from nova import test
from nova.tests.unit import fake_block_device
from nova.tests.unit.image import fake as fake_image
diff --git a/nova/tests/unit/virt/vmwareapi/fake.py b/nova/tests/unit/virt/vmwareapi/fake.py
index ccd14400d8..585e1193b5 100644
--- a/nova/tests/unit/virt/vmwareapi/fake.py
+++ b/nova/tests/unit/virt/vmwareapi/fake.py
@@ -21,12 +21,12 @@ A fake VMware VI API implementation.
import collections
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import units
from oslo_vmware import exceptions as vexc
from nova import exception
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova.virt.vmwareapi import constants
from nova.virt.vmwareapi import ds_util
diff --git a/nova/tests/unit/virt/xenapi/image/test_glance.py b/nova/tests/unit/virt/xenapi/image/test_glance.py
index 8fbb853efa..0189b201f6 100644
--- a/nova/tests/unit/virt/xenapi/image/test_glance.py
+++ b/nova/tests/unit/virt/xenapi/image/test_glance.py
@@ -18,11 +18,11 @@ import time
import mock
from mox3 import mox
+from oslo_log import log as logging
from nova.compute import utils as compute_utils
from nova import context
from nova import exception
-from nova.openstack.common import log as logging
from nova.tests.unit.virt.xenapi import stubs
from nova.virt.xenapi import driver as xenapi_conn
from nova.virt.xenapi import fake
diff --git a/nova/tests/unit/virt/xenapi/test_xenapi.py b/nova/tests/unit/virt/xenapi/test_xenapi.py
index 785044a95d..161a06733e 100644
--- a/nova/tests/unit/virt/xenapi/test_xenapi.py
+++ b/nova/tests/unit/virt/xenapi/test_xenapi.py
@@ -28,6 +28,7 @@ from mox3 import mox
from oslo_concurrency import lockutils
from oslo_config import cfg
from oslo_config import fixture as config_fixture
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import importutils
import testtools
@@ -47,7 +48,6 @@ from nova import db
from nova import exception
from nova import objects
from nova.objects import base
-from nova.openstack.common import log as logging
from nova import test
from nova.tests.unit.db import fakes as db_fakes
from nova.tests.unit import fake_instance
diff --git a/nova/utils.py b/nova/utils.py
index f76745ebc4..b9f40048f8 100644
--- a/nova/utils.py
+++ b/nova/utils.py
@@ -39,6 +39,7 @@ import netaddr
from oslo_concurrency import lockutils
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
import oslo_messaging as messaging
from oslo_utils import excutils
from oslo_utils import importutils
@@ -47,7 +48,6 @@ import six
from nova import exception
from nova.i18n import _, _LE, _LW
-from nova.openstack.common import log as logging
notify_decorator = 'nova.notifications.notify_decorator'
diff --git a/nova/version.py b/nova/version.py
index a03e18513e..c884496d2f 100644
--- a/nova/version.py
+++ b/nova/version.py
@@ -33,7 +33,7 @@ def _load_config():
from oslo_config import cfg
- from nova.openstack.common import log as logging
+ import logging
global loaded, NOVA_VENDOR, NOVA_PRODUCT, NOVA_PACKAGE
if loaded:
diff --git a/nova/virt/block_device.py b/nova/virt/block_device.py
index db1909888d..9b2c13672d 100644
--- a/nova/virt/block_device.py
+++ b/nova/virt/block_device.py
@@ -15,6 +15,7 @@
import functools
import operator
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import excutils
@@ -23,7 +24,6 @@ from nova.i18n import _LE
from nova.i18n import _LI
from nova import objects
from nova.objects import base as obj_base
-from nova.openstack.common import log as logging
from nova.volume import encryptors
LOG = logging.getLogger(__name__)
diff --git a/nova/virt/configdrive.py b/nova/virt/configdrive.py
index 1fe23736f4..6e546a76aa 100644
--- a/nova/virt/configdrive.py
+++ b/nova/virt/configdrive.py
@@ -19,13 +19,13 @@ import os
import shutil
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import strutils
from oslo_utils import units
from nova import exception
from nova.i18n import _LW
from nova.openstack.common import fileutils
-from nova.openstack.common import log as logging
from nova import utils
from nova import version
diff --git a/nova/virt/disk/api.py b/nova/virt/disk/api.py
index fc37fc9801..bc629d627d 100644
--- a/nova/virt/disk/api.py
+++ b/nova/virt/disk/api.py
@@ -32,13 +32,13 @@ if os.name != 'nt':
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from nova import exception
from nova.i18n import _
from nova.i18n import _LE
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt.disk.mount import api as mount
from nova.virt.disk.vfs import api as vfs
diff --git a/nova/virt/disk/mount/api.py b/nova/virt/disk/mount/api.py
index ce28d97569..60a8bbf544 100644
--- a/nova/virt/disk/mount/api.py
+++ b/nova/virt/disk/mount/api.py
@@ -16,10 +16,10 @@
import os
import time
+from oslo_log import log as logging
from oslo_utils import importutils
from nova.i18n import _, _LI, _LW
-from nova.openstack.common import log as logging
from nova import utils
LOG = logging.getLogger(__name__)
diff --git a/nova/virt/disk/mount/loop.py b/nova/virt/disk/mount/loop.py
index 1d17379ce7..8c47126ebf 100644
--- a/nova/virt/disk/mount/loop.py
+++ b/nova/virt/disk/mount/loop.py
@@ -13,8 +13,9 @@
# under the License.
"""Support for mounting images with the loop device."""
+from oslo_log import log as logging
+
from nova.i18n import _, _LI
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt.disk.mount import api
diff --git a/nova/virt/disk/mount/nbd.py b/nova/virt/disk/mount/nbd.py
index 88f2a88f90..68c91ba91b 100644
--- a/nova/virt/disk/mount/nbd.py
+++ b/nova/virt/disk/mount/nbd.py
@@ -19,9 +19,9 @@ import re
import time
from oslo_config import cfg
+from oslo_log import log as logging
from nova.i18n import _, _LE, _LI, _LW
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt.disk.mount import api
diff --git a/nova/virt/disk/vfs/api.py b/nova/virt/disk/vfs/api.py
index 7d2d0ee8af..eab50be6ac 100644
--- a/nova/virt/disk/vfs/api.py
+++ b/nova/virt/disk/vfs/api.py
@@ -12,11 +12,11 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
+from oslo_utils import importutils
+
from nova import exception
from nova.i18n import _LI
-from nova.openstack.common import log as logging
-
-from oslo_utils import importutils
LOG = logging.getLogger(__name__)
diff --git a/nova/virt/disk/vfs/guestfs.py b/nova/virt/disk/vfs/guestfs.py
index 323a9dcf26..71a40d7a9b 100644
--- a/nova/virt/disk/vfs/guestfs.py
+++ b/nova/virt/disk/vfs/guestfs.py
@@ -14,13 +14,13 @@
from eventlet import tpool
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import importutils
import six
from nova import exception
from nova.i18n import _
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.virt.disk.vfs import api as vfs
diff --git a/nova/virt/disk/vfs/localfs.py b/nova/virt/disk/vfs/localfs.py
index 048c3f12d1..11a6e58057 100644
--- a/nova/virt/disk/vfs/localfs.py
+++ b/nova/virt/disk/vfs/localfs.py
@@ -15,11 +15,11 @@
import os
import tempfile
+from oslo_log import log as logging
from oslo_utils import excutils
from nova import exception
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt.disk.mount import loop
from nova.virt.disk.mount import nbd
diff --git a/nova/virt/driver.py b/nova/virt/driver.py
index e90fd38fb9..4e794f91d2 100644
--- a/nova/virt/driver.py
+++ b/nova/virt/driver.py
@@ -23,10 +23,10 @@ Driver base-classes:
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import importutils
from nova.i18n import _, _LE, _LI
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt import event as virtevent
diff --git a/nova/virt/fake.py b/nova/virt/fake.py
index c4e3b13381..ad6c8bcc0d 100644
--- a/nova/virt/fake.py
+++ b/nova/virt/fake.py
@@ -26,6 +26,7 @@ semantics of real hypervisor connections.
import contextlib
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from nova.compute import arch
@@ -37,7 +38,6 @@ from nova.console import type as ctype
from nova import db
from nova import exception
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt import diagnostics
from nova.virt import driver
diff --git a/nova/virt/firewall.py b/nova/virt/firewall.py
index 1109946913..ddb387c6f6 100644
--- a/nova/virt/firewall.py
+++ b/nova/virt/firewall.py
@@ -16,6 +16,7 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import importutils
from nova.compute import utils as compute_utils
@@ -23,7 +24,6 @@ from nova import context
from nova.i18n import _LI
from nova.network import linux_net
from nova import objects
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt import netutils
diff --git a/nova/virt/hardware.py b/nova/virt/hardware.py
index 830a74c70c..e2bb618c2f 100644
--- a/nova/virt/hardware.py
+++ b/nova/virt/hardware.py
@@ -16,6 +16,7 @@ import collections
import itertools
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import units
import six
@@ -24,7 +25,6 @@ from nova import context
from nova import exception
from nova.i18n import _
from nova import objects
-from nova.openstack.common import log as logging
virt_cpu_opts = [
cfg.StrOpt('vcpu_pin_set',
diff --git a/nova/virt/hyperv/basevolumeutils.py b/nova/virt/hyperv/basevolumeutils.py
index bfbb890575..5fcb4faceb 100644
--- a/nova/virt/hyperv/basevolumeutils.py
+++ b/nova/virt/hyperv/basevolumeutils.py
@@ -28,9 +28,10 @@ if sys.platform == 'win32':
import _winreg
import wmi
+from oslo_log import log as logging
+
from nova import block_device
from nova.i18n import _LI
-from nova.openstack.common import log as logging
from nova.virt import driver
LOG = logging.getLogger(__name__)
diff --git a/nova/virt/hyperv/driver.py b/nova/virt/hyperv/driver.py
index 62e7e11a8f..19e849ac64 100644
--- a/nova/virt/hyperv/driver.py
+++ b/nova/virt/hyperv/driver.py
@@ -19,8 +19,9 @@ A Hyper-V Nova Compute driver.
import platform
+from oslo_log import log as logging
+
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova.virt import driver
from nova.virt.hyperv import hostops
from nova.virt.hyperv import livemigrationops
diff --git a/nova/virt/hyperv/hostops.py b/nova/virt/hyperv/hostops.py
index fa22169cc7..3f5d4986dd 100644
--- a/nova/virt/hyperv/hostops.py
+++ b/nova/virt/hyperv/hostops.py
@@ -22,6 +22,7 @@ import platform
import time
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import units
@@ -29,7 +30,6 @@ from nova.compute import arch
from nova.compute import hv_type
from nova.compute import vm_mode
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova.virt.hyperv import constants
from nova.virt.hyperv import utilsfactory
diff --git a/nova/virt/hyperv/imagecache.py b/nova/virt/hyperv/imagecache.py
index 29678ae623..690487ed9b 100644
--- a/nova/virt/hyperv/imagecache.py
+++ b/nova/virt/hyperv/imagecache.py
@@ -18,11 +18,11 @@ Image caching and management.
import os
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
from oslo_utils import units
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt.hyperv import utilsfactory
from nova.virt.hyperv import vmutils
diff --git a/nova/virt/hyperv/ioutils.py b/nova/virt/hyperv/ioutils.py
index 52ad0836e9..f538ce4a17 100644
--- a/nova/virt/hyperv/ioutils.py
+++ b/nova/virt/hyperv/ioutils.py
@@ -17,9 +17,9 @@ import errno
import os
from eventlet import patcher
+from oslo_log import log as logging
from nova.i18n import _LE
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/virt/hyperv/livemigrationops.py b/nova/virt/hyperv/livemigrationops.py
index e2e1720cbd..8efe2d9c94 100644
--- a/nova/virt/hyperv/livemigrationops.py
+++ b/nova/virt/hyperv/livemigrationops.py
@@ -19,10 +19,10 @@ Management class for live migration VM operations.
import functools
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova.virt.hyperv import imagecache
from nova.virt.hyperv import utilsfactory
from nova.virt.hyperv import vmops
diff --git a/nova/virt/hyperv/livemigrationutils.py b/nova/virt/hyperv/livemigrationutils.py
index 659f8c9dca..bfad599b48 100644
--- a/nova/virt/hyperv/livemigrationutils.py
+++ b/nova/virt/hyperv/livemigrationutils.py
@@ -18,9 +18,10 @@ import sys
if sys.platform == 'win32':
import wmi
+from oslo_log import log as logging
+
from nova import exception
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova.virt.hyperv import vmutils
from nova.virt.hyperv import vmutilsv2
from nova.virt.hyperv import volumeutilsv2
diff --git a/nova/virt/hyperv/migrationops.py b/nova/virt/hyperv/migrationops.py
index b34f8996fb..0955e3e934 100644
--- a/nova/virt/hyperv/migrationops.py
+++ b/nova/virt/hyperv/migrationops.py
@@ -18,12 +18,12 @@ Management class for migration / resize operations.
"""
import os
+from oslo_log import log as logging
from oslo_utils import excutils
from oslo_utils import units
from nova import exception
from nova.i18n import _, _LE
-from nova.openstack.common import log as logging
from nova.virt import configdrive
from nova.virt.hyperv import imagecache
from nova.virt.hyperv import utilsfactory
diff --git a/nova/virt/hyperv/pathutils.py b/nova/virt/hyperv/pathutils.py
index 791884fe15..83710bb70f 100644
--- a/nova/virt/hyperv/pathutils.py
+++ b/nova/virt/hyperv/pathutils.py
@@ -21,9 +21,9 @@ if sys.platform == 'win32':
import wmi
from oslo_config import cfg
+from oslo_log import log as logging
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt.hyperv import constants
from nova.virt.hyperv import vmutils
diff --git a/nova/virt/hyperv/rdpconsoleops.py b/nova/virt/hyperv/rdpconsoleops.py
index 1f307a98fa..d3c727908b 100644
--- a/nova/virt/hyperv/rdpconsoleops.py
+++ b/nova/virt/hyperv/rdpconsoleops.py
@@ -13,8 +13,9 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
+
from nova.console import type as ctype
-from nova.openstack.common import log as logging
from nova.virt.hyperv import hostops
from nova.virt.hyperv import utilsfactory
diff --git a/nova/virt/hyperv/snapshotops.py b/nova/virt/hyperv/snapshotops.py
index f4ac575591..65a88c7a7d 100644
--- a/nova/virt/hyperv/snapshotops.py
+++ b/nova/virt/hyperv/snapshotops.py
@@ -19,11 +19,11 @@ Management class for VM snapshot operations.
import os
from oslo_config import cfg
+from oslo_log import log as logging
from nova.compute import task_states
from nova.i18n import _LW
from nova.image import glance
-from nova.openstack.common import log as logging
from nova.virt.hyperv import utilsfactory
CONF = cfg.CONF
diff --git a/nova/virt/hyperv/utilsfactory.py b/nova/virt/hyperv/utilsfactory.py
index d12df2f398..9ff0216450 100644
--- a/nova/virt/hyperv/utilsfactory.py
+++ b/nova/virt/hyperv/utilsfactory.py
@@ -14,9 +14,9 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova.virt.hyperv import hostutils
from nova.virt.hyperv import livemigrationutils
from nova.virt.hyperv import networkutils
diff --git a/nova/virt/hyperv/vif.py b/nova/virt/hyperv/vif.py
index 0cea6b300a..a07c38b77b 100644
--- a/nova/virt/hyperv/vif.py
+++ b/nova/virt/hyperv/vif.py
@@ -17,8 +17,8 @@
import abc
from oslo_config import cfg
+from oslo_log import log as logging
-from nova.openstack.common import log as logging
from nova.virt.hyperv import utilsfactory
hyperv_opts = [
diff --git a/nova/virt/hyperv/vmops.py b/nova/virt/hyperv/vmops.py
index 5722b57887..5c0fd7e04e 100644
--- a/nova/virt/hyperv/vmops.py
+++ b/nova/virt/hyperv/vmops.py
@@ -24,6 +24,7 @@ import time
from eventlet import timeout as etimeout
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
from oslo_utils import importutils
from oslo_utils import units
@@ -32,7 +33,6 @@ from nova.api.metadata import base as instance_metadata
from nova import exception
from nova.i18n import _, _LI, _LE, _LW
from nova.openstack.common import fileutils
-from nova.openstack.common import log as logging
from nova.openstack.common import loopingcall
from nova.openstack.common import uuidutils
from nova import utils
diff --git a/nova/virt/hyperv/vmutils.py b/nova/virt/hyperv/vmutils.py
index 795f361ef5..586e19663e 100644
--- a/nova/virt/hyperv/vmutils.py
+++ b/nova/virt/hyperv/vmutils.py
@@ -26,10 +26,10 @@ if sys.platform == 'win32':
import wmi
from oslo_config import cfg
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _, _LW
-from nova.openstack.common import log as logging
from nova.virt.hyperv import constants
from nova.virt.hyperv import hostutils
diff --git a/nova/virt/hyperv/vmutilsv2.py b/nova/virt/hyperv/vmutilsv2.py
index 3d66a55146..4834e61a03 100644
--- a/nova/virt/hyperv/vmutilsv2.py
+++ b/nova/virt/hyperv/vmutilsv2.py
@@ -25,8 +25,8 @@ if sys.platform == 'win32':
import wmi
from oslo_config import cfg
+from oslo_log import log as logging
-from nova.openstack.common import log as logging
from nova.virt.hyperv import constants
from nova.virt.hyperv import vmutils
diff --git a/nova/virt/hyperv/volumeops.py b/nova/virt/hyperv/volumeops.py
index 376e9a12b1..df59effa60 100644
--- a/nova/virt/hyperv/volumeops.py
+++ b/nova/virt/hyperv/volumeops.py
@@ -23,11 +23,11 @@ import re
import time
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
from nova import exception
from nova.i18n import _, _LE, _LW
-from nova.openstack.common import log as logging
from nova.virt import driver
from nova.virt.hyperv import utilsfactory
from nova.virt.hyperv import vmutils
diff --git a/nova/virt/hyperv/volumeutils.py b/nova/virt/hyperv/volumeutils.py
index 29d4f37656..9594fac9f9 100644
--- a/nova/virt/hyperv/volumeutils.py
+++ b/nova/virt/hyperv/volumeutils.py
@@ -27,9 +27,9 @@ import re
import time
from oslo_config import cfg
+from oslo_log import log as logging
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt.hyperv import basevolumeutils
from nova.virt.hyperv import vmutils
diff --git a/nova/virt/hyperv/volumeutilsv2.py b/nova/virt/hyperv/volumeutilsv2.py
index 10d8dc9973..6a328f876e 100644
--- a/nova/virt/hyperv/volumeutilsv2.py
+++ b/nova/virt/hyperv/volumeutilsv2.py
@@ -25,9 +25,9 @@ if sys.platform == 'win32':
import wmi
from oslo_config import cfg
+from oslo_log import log as logging
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt.hyperv import basevolumeutils
from nova.virt.hyperv import vmutils
diff --git a/nova/virt/images.py b/nova/virt/images.py
index 40f259a7fa..d9bd2835cf 100644
--- a/nova/virt/images.py
+++ b/nova/virt/images.py
@@ -22,13 +22,13 @@ Handling of VM disk images.
import os
from oslo_config import cfg
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _, _LE
from nova import image
from nova.openstack.common import fileutils
from nova.openstack.common import imageutils
-from nova.openstack.common import log as logging
from nova import utils
LOG = logging.getLogger(__name__)
diff --git a/nova/virt/ironic/client_wrapper.py b/nova/virt/ironic/client_wrapper.py
index a01e839aa9..887de9d8e2 100644
--- a/nova/virt/ironic/client_wrapper.py
+++ b/nova/virt/ironic/client_wrapper.py
@@ -18,11 +18,11 @@
import time
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import importutils
from nova import exception
from nova.i18n import _
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/virt/ironic/driver.py b/nova/virt/ironic/driver.py
index 7641734bbb..86b265ee35 100644
--- a/nova/virt/ironic/driver.py
+++ b/nova/virt/ironic/driver.py
@@ -22,12 +22,12 @@ bare metal resources.
"""
import base64
import gzip
-import logging as py_logging
import shutil
import tempfile
import time
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import excutils
from oslo_utils import importutils
@@ -46,7 +46,6 @@ from nova.i18n import _LE
from nova.i18n import _LI
from nova.i18n import _LW
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common import loopingcall
from nova.virt import configdrive
from nova.virt import driver as virt_driver
@@ -183,8 +182,8 @@ class IronicDriver(virt_driver.ComputeDriver):
# to be addressed
ironicclient_log_level = CONF.ironic.client_log_level
if ironicclient_log_level:
- level = py_logging.getLevelName(ironicclient_log_level)
- logger = py_logging.getLogger('ironicclient')
+ level = logging.getLevelName(ironicclient_log_level)
+ logger = logging.getLogger('ironicclient')
logger.setLevel(level)
self.ironicclient = client_wrapper.IronicClientWrapper()
diff --git a/nova/virt/libvirt/config.py b/nova/virt/libvirt/config.py
index c3b865e54e..427bac053e 100644
--- a/nova/virt/libvirt/config.py
+++ b/nova/virt/libvirt/config.py
@@ -26,11 +26,11 @@ helpers for populating up config object instances.
import time
from lxml import etree
+from oslo_log import log as logging
from oslo_utils import units
import six
from nova import exception
-from nova.openstack.common import log as logging
from nova.pci import utils as pci_utils
from nova.virt import hardware
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
index 325771bebc..bb18342328 100644
--- a/nova/virt/libvirt/driver.py
+++ b/nova/virt/libvirt/driver.py
@@ -47,6 +47,7 @@ from eventlet import tpool
from lxml import etree
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import encodeutils
from oslo_utils import excutils
@@ -76,7 +77,6 @@ from nova import image
from nova.network import model as network_model
from nova import objects
from nova.openstack.common import fileutils
-from nova.openstack.common import log as logging
from nova.openstack.common import loopingcall
from nova.pci import manager as pci_manager
from nova.pci import utils as pci_utils
diff --git a/nova/virt/libvirt/firewall.py b/nova/virt/libvirt/firewall.py
index 2bcdaa7275..2ca43080f2 100644
--- a/nova/virt/libvirt/firewall.py
+++ b/nova/virt/libvirt/firewall.py
@@ -19,12 +19,12 @@ import uuid
from lxml import etree
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import importutils
from nova.cloudpipe import pipelib
from nova.i18n import _LI
from nova.i18n import _LW
-from nova.openstack.common import log as logging
import nova.virt.firewall as base_firewall
from nova.virt import netutils
diff --git a/nova/virt/libvirt/host.py b/nova/virt/libvirt/host.py
index 3045fa6477..742093701f 100644
--- a/nova/virt/libvirt/host.py
+++ b/nova/virt/libvirt/host.py
@@ -37,6 +37,7 @@ from eventlet import greenthread
from eventlet import patcher
from eventlet import tpool
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
from nova import context as nova_context
@@ -45,7 +46,6 @@ from nova.i18n import _
from nova.i18n import _LE
from nova.i18n import _LI
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova import rpc
from nova import utils
from nova.virt import event as virtevent
diff --git a/nova/virt/libvirt/imagebackend.py b/nova/virt/libvirt/imagebackend.py
index 44a626bf25..b85b1e8c74 100644
--- a/nova/virt/libvirt/imagebackend.py
+++ b/nova/virt/libvirt/imagebackend.py
@@ -20,6 +20,7 @@ import os
import shutil
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import excutils
from oslo_utils import units
@@ -31,7 +32,6 @@ from nova.i18n import _LE, _LI
from nova import image
from nova import keymgr
from nova.openstack.common import fileutils
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt.disk import api as disk
from nova.virt import images
diff --git a/nova/virt/libvirt/imagecache.py b/nova/virt/libvirt/imagecache.py
index 48cd8868b6..bbc2179838 100644
--- a/nova/virt/libvirt/imagecache.py
+++ b/nova/virt/libvirt/imagecache.py
@@ -28,13 +28,13 @@ import time
from oslo_concurrency import lockutils
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from nova.i18n import _LE
from nova.i18n import _LI
from nova.i18n import _LW
from nova.openstack.common import fileutils
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt import imagecache
from nova.virt.libvirt import utils as libvirt_utils
diff --git a/nova/virt/libvirt/lvm.py b/nova/virt/libvirt/lvm.py
index fef3ceb82f..02d78fafe6 100644
--- a/nova/virt/libvirt/lvm.py
+++ b/nova/virt/libvirt/lvm.py
@@ -23,6 +23,7 @@ import functools
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import units
import six
@@ -30,7 +31,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LE
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova import utils as nova_utils
from nova.virt.libvirt import utils
diff --git a/nova/virt/libvirt/quobyte.py b/nova/virt/libvirt/quobyte.py
index a4ed046cc0..e897b17334 100644
--- a/nova/virt/libvirt/quobyte.py
+++ b/nova/virt/libvirt/quobyte.py
@@ -16,13 +16,13 @@
import os
from oslo_concurrency import processutils
+from oslo_log import log as logging
from nova import exception as nova_exception
from nova.i18n import _
from nova.i18n import _LE
from nova.i18n import _LI
from nova.openstack.common import fileutils
-from nova.openstack.common import log as logging
from nova import utils
diff --git a/nova/virt/libvirt/rbd_utils.py b/nova/virt/libvirt/rbd_utils.py
index 8145d11f55..770481757b 100644
--- a/nova/virt/libvirt/rbd_utils.py
+++ b/nova/virt/libvirt/rbd_utils.py
@@ -23,6 +23,7 @@ except ImportError:
rados = None
rbd = None
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import excutils
from oslo_utils import units
@@ -31,7 +32,6 @@ from nova import exception
from nova.i18n import _
from nova.i18n import _LE
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova import utils
LOG = logging.getLogger(__name__)
diff --git a/nova/virt/libvirt/remotefs.py b/nova/virt/libvirt/remotefs.py
index 8881c811f0..75dcff3493 100644
--- a/nova/virt/libvirt/remotefs.py
+++ b/nova/virt/libvirt/remotefs.py
@@ -14,9 +14,9 @@
# under the License.
from oslo_concurrency import processutils
+from oslo_log import log as logging
from nova.i18n import _LE, _LW
-from nova.openstack.common import log as logging
from nova import utils
LOG = logging.getLogger(__name__)
diff --git a/nova/virt/libvirt/utils.py b/nova/virt/libvirt/utils.py
index 570336255f..3ea42eedd5 100644
--- a/nova/virt/libvirt/utils.py
+++ b/nova/virt/libvirt/utils.py
@@ -26,12 +26,12 @@ import re
from lxml import etree
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from nova.compute import arch
from nova.i18n import _
from nova.i18n import _LI
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.storage import linuxscsi
from nova import utils
from nova.virt import images
diff --git a/nova/virt/libvirt/vif.py b/nova/virt/libvirt/vif.py
index 1b7fe61b59..248d5a63a5 100644
--- a/nova/virt/libvirt/vif.py
+++ b/nova/virt/libvirt/vif.py
@@ -22,13 +22,13 @@ import copy
import os
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _
from nova.i18n import _LE
from nova.network import linux_net
from nova.network import model as network_model
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt.libvirt import config as vconfig
from nova.virt.libvirt import designer
diff --git a/nova/virt/libvirt/volume.py b/nova/virt/libvirt/volume.py
index 6c2f8a9d86..868845804b 100644
--- a/nova/virt/libvirt/volume.py
+++ b/nova/virt/libvirt/volume.py
@@ -26,6 +26,7 @@ import urllib2
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import strutils
import six
import six.moves.urllib.parse as urlparse
@@ -36,7 +37,6 @@ from nova.i18n import _
from nova.i18n import _LE
from nova.i18n import _LI
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova.openstack.common import loopingcall
from nova import paths
from nova.storage import linuxscsi
diff --git a/nova/virt/storage_users.py b/nova/virt/storage_users.py
index dbb5c2a1e3..e95af333c4 100644
--- a/nova/virt/storage_users.py
+++ b/nova/virt/storage_users.py
@@ -17,10 +17,10 @@ import os
import time
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova import utils
LOG = logging.getLogger(__name__)
diff --git a/nova/virt/vmwareapi/driver.py b/nova/virt/vmwareapi/driver.py
index 0657bab45e..cc92ad665c 100644
--- a/nova/virt/vmwareapi/driver.py
+++ b/nova/virt/vmwareapi/driver.py
@@ -22,6 +22,7 @@ A connection to the VMware vCenter platform.
import re
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_vmware import api
from oslo_vmware import exceptions as vexc
@@ -31,7 +32,6 @@ from oslo_vmware import vim_util
from nova import exception
from nova.i18n import _, _LI, _LW
-from nova.openstack.common import log as logging
from nova.virt import driver
from nova.virt.vmwareapi import constants
from nova.virt.vmwareapi import error_util
diff --git a/nova/virt/vmwareapi/ds_util.py b/nova/virt/vmwareapi/ds_util.py
index c0ff57670c..034879dbd1 100644
--- a/nova/virt/vmwareapi/ds_util.py
+++ b/nova/virt/vmwareapi/ds_util.py
@@ -15,14 +15,15 @@
"""
Datastore utility functions
"""
+
import posixpath
+from oslo_log import log as logging
from oslo_vmware import exceptions as vexc
from oslo_vmware import pbm
from nova import exception
from nova.i18n import _, _LE, _LI
-from nova.openstack.common import log as logging
from nova.virt.vmwareapi import constants
from nova.virt.vmwareapi import vim_util
from nova.virt.vmwareapi import vm_util
diff --git a/nova/virt/vmwareapi/imagecache.py b/nova/virt/vmwareapi/imagecache.py
index d594cb0e99..30532524e7 100644
--- a/nova/virt/vmwareapi/imagecache.py
+++ b/nova/virt/vmwareapi/imagecache.py
@@ -37,11 +37,11 @@ This will ensure that a image is not deleted during the spawn.
from oslo_concurrency import lockutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import timeutils
from oslo_vmware import exceptions as vexc
from nova.i18n import _LI, _LW
-from nova.openstack.common import log as logging
from nova.virt import imagecache
from nova.virt.vmwareapi import ds_util
from nova.virt.vmwareapi import vim_util
diff --git a/nova/virt/vmwareapi/images.py b/nova/virt/vmwareapi/images.py
index cc38d14a9b..1f47483903 100644
--- a/nova/virt/vmwareapi/images.py
+++ b/nova/virt/vmwareapi/images.py
@@ -23,6 +23,7 @@ import tempfile
from lxml import etree
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import strutils
from oslo_utils import units
from oslo_vmware import rw_handles
@@ -30,7 +31,6 @@ from oslo_vmware import rw_handles
from nova import exception
from nova.i18n import _, _LI
from nova import image
-from nova.openstack.common import log as logging
from nova.virt.vmwareapi import constants
from nova.virt.vmwareapi import io_util
diff --git a/nova/virt/vmwareapi/io_util.py b/nova/virt/vmwareapi/io_util.py
index 8970375e2a..57d49ab071 100644
--- a/nova/virt/vmwareapi/io_util.py
+++ b/nova/virt/vmwareapi/io_util.py
@@ -22,11 +22,11 @@ to the write using a LightQueue as a Pipe between the reader and the writer.
from eventlet import event
from eventlet import greenthread
from eventlet import queue
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _
from nova import image
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
IMAGE_API = image.API()
diff --git a/nova/virt/vmwareapi/network_util.py b/nova/virt/vmwareapi/network_util.py
index e802a93a52..97f5119c9c 100644
--- a/nova/virt/vmwareapi/network_util.py
+++ b/nova/virt/vmwareapi/network_util.py
@@ -17,11 +17,11 @@
"""
Utility functions for ESX Networking.
"""
+from oslo_log import log as logging
from oslo_vmware import exceptions as vexc
from nova import exception
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova.virt.vmwareapi import vim_util
from nova.virt.vmwareapi import vm_util
diff --git a/nova/virt/vmwareapi/vif.py b/nova/virt/vmwareapi/vif.py
index c37c0d2977..3d228d70ae 100644
--- a/nova/virt/vmwareapi/vif.py
+++ b/nova/virt/vmwareapi/vif.py
@@ -16,12 +16,12 @@
"""VIF drivers for VMware."""
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_vmware import exceptions as vexc
from nova import exception
from nova.i18n import _LW
from nova.network import model
-from nova.openstack.common import log as logging
from nova.virt.vmwareapi import network_util
from nova.virt.vmwareapi import vim_util
from nova.virt.vmwareapi import vm_util
diff --git a/nova/virt/vmwareapi/vim_util.py b/nova/virt/vmwareapi/vim_util.py
index 2041601f9c..d22251a80f 100644
--- a/nova/virt/vmwareapi/vim_util.py
+++ b/nova/virt/vmwareapi/vim_util.py
@@ -18,11 +18,11 @@ The VMware API utility module.
"""
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_vmware import vim_util as vutil
import suds
from nova.i18n import _LW
-from nova.openstack.common import log as logging
vmware_opts = cfg.IntOpt('maximum_objects', default=100,
help='The maximum number of ObjectContent data '
diff --git a/nova/virt/vmwareapi/vm_util.py b/nova/virt/vmwareapi/vm_util.py
index de496c211e..aba20deca4 100644
--- a/nova/virt/vmwareapi/vm_util.py
+++ b/nova/virt/vmwareapi/vm_util.py
@@ -23,6 +23,7 @@ import copy
import functools
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
from oslo_utils import units
from oslo_vmware import exceptions as vexc
@@ -32,7 +33,6 @@ from oslo_vmware import pbm
from nova import exception
from nova.i18n import _, _LI, _LW
from nova.network import model as network_model
-from nova.openstack.common import log as logging
from nova.virt.vmwareapi import constants
from nova.virt.vmwareapi import vim_util
diff --git a/nova/virt/vmwareapi/vmops.py b/nova/virt/vmwareapi/vmops.py
index 19b88916d8..75e7524206 100644
--- a/nova/virt/vmwareapi/vmops.py
+++ b/nova/virt/vmwareapi/vmops.py
@@ -26,6 +26,7 @@ import time
import decorator
from oslo_concurrency import lockutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
from oslo_utils import strutils
from oslo_utils import units
@@ -41,7 +42,6 @@ from nova import context as nova_context
from nova import exception
from nova.i18n import _, _LE, _LI, _LW
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common import uuidutils
from nova import utils
from nova.virt import configdrive
diff --git a/nova/virt/vmwareapi/volumeops.py b/nova/virt/vmwareapi/volumeops.py
index 6c2381aa92..2c62857323 100644
--- a/nova/virt/vmwareapi/volumeops.py
+++ b/nova/virt/vmwareapi/volumeops.py
@@ -18,12 +18,12 @@ Management class for Storage-related functions (attach, detach, etc).
"""
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_vmware import vim_util as vutil
from nova.compute import vm_states
from nova import exception
from nova.i18n import _, _LI
-from nova.openstack.common import log as logging
from nova.virt.vmwareapi import constants
from nova.virt.vmwareapi import vim_util
from nova.virt.vmwareapi import vm_util
diff --git a/nova/virt/xenapi/agent.py b/nova/virt/xenapi/agent.py
index 141fd9f4c7..f6972aca57 100644
--- a/nova/virt/xenapi/agent.py
+++ b/nova/virt/xenapi/agent.py
@@ -22,6 +22,7 @@ import time
import uuid
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import strutils
@@ -32,7 +33,6 @@ from nova import crypto
from nova import exception
from nova.i18n import _, _LE, _LI, _LW
from nova import objects
-from nova.openstack.common import log as logging
from nova import utils
diff --git a/nova/virt/xenapi/client/session.py b/nova/virt/xenapi/client/session.py
index 324458d005..70e89fb500 100644
--- a/nova/virt/xenapi/client/session.py
+++ b/nova/virt/xenapi/client/session.py
@@ -22,12 +22,12 @@ import xmlrpclib
from eventlet import queue
from eventlet import timeout
from oslo_config import cfg
+from oslo_log import log as logging
from nova import context
from nova import exception
from nova.i18n import _, _LE, _LW
from nova import objects
-from nova.openstack.common import log as logging
from nova.openstack.common import versionutils
from nova import utils
from nova import version
diff --git a/nova/virt/xenapi/driver.py b/nova/virt/xenapi/driver.py
index 8e9ba00be9..b571899050 100644
--- a/nova/virt/xenapi/driver.py
+++ b/nova/virt/xenapi/driver.py
@@ -26,12 +26,12 @@ A driver for XenServer or Xen Cloud Platform.
import math
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import units
import six.moves.urllib.parse as urlparse
from nova.i18n import _, _LE, _LW
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt import driver
from nova.virt.xenapi.client import session
diff --git a/nova/virt/xenapi/fake.py b/nova/virt/xenapi/fake.py
index 06adf6188f..d5a06ebf2d 100644
--- a/nova/virt/xenapi/fake.py
+++ b/nova/virt/xenapi/fake.py
@@ -55,13 +55,13 @@ import uuid
from xml.sax import saxutils
import zlib
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import timeutils
from oslo_utils import units
from nova import exception
from nova.i18n import _
-from nova.openstack.common import log as logging
from nova.virt.xenapi.client import session as xenapi_session
diff --git a/nova/virt/xenapi/firewall.py b/nova/virt/xenapi/firewall.py
index 764f166ce5..ebebf3d9c1 100644
--- a/nova/virt/xenapi/firewall.py
+++ b/nova/virt/xenapi/firewall.py
@@ -15,10 +15,10 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from nova import context
-from nova.openstack.common import log as logging
from nova.virt import firewall
from nova.virt import netutils
diff --git a/nova/virt/xenapi/host.py b/nova/virt/xenapi/host.py
index ebee30d502..27a050bb6e 100644
--- a/nova/virt/xenapi/host.py
+++ b/nova/virt/xenapi/host.py
@@ -20,6 +20,7 @@ Management class for host-related functions (start, reboot, etc).
import re
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from nova.compute import arch
@@ -31,7 +32,6 @@ from nova import context
from nova import exception
from nova.i18n import _, _LE, _LI, _LW
from nova import objects
-from nova.openstack.common import log as logging
from nova.virt.xenapi import pool_states
from nova.virt.xenapi import vm_utils
diff --git a/nova/virt/xenapi/image/bittorrent.py b/nova/virt/xenapi/image/bittorrent.py
index 28dc939d47..c7b342485f 100644
--- a/nova/virt/xenapi/image/bittorrent.py
+++ b/nova/virt/xenapi/image/bittorrent.py
@@ -14,11 +14,11 @@
# under the License.
from oslo_config import cfg
+from oslo_log import log as logging
import pkg_resources
import six.moves.urllib.parse as urlparse
from nova.i18n import _
-import nova.openstack.common.log as logging
from nova.virt.xenapi import vm_utils
LOG = logging.getLogger(__name__)
diff --git a/nova/virt/xenapi/image/glance.py b/nova/virt/xenapi/image/glance.py
index 85599b11a0..0a0b234cde 100644
--- a/nova/virt/xenapi/image/glance.py
+++ b/nova/virt/xenapi/image/glance.py
@@ -17,11 +17,11 @@ import functools
import sys
from oslo_config import cfg
+from oslo_log import log as logging
from nova.compute import utils as compute_utils
from nova import exception
from nova.image import glance
-from nova.openstack.common import log as logging
from nova import utils
from nova.virt.xenapi import vm_utils
diff --git a/nova/virt/xenapi/pool.py b/nova/virt/xenapi/pool.py
index a4c7bce0d4..a7b5ef509e 100644
--- a/nova/virt/xenapi/pool.py
+++ b/nova/virt/xenapi/pool.py
@@ -18,6 +18,7 @@ Management class for Pool-related functions (join, eject, etc).
"""
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
import six
import six.moves.urllib.parse as urlparse
@@ -25,7 +26,6 @@ import six.moves.urllib.parse as urlparse
from nova.compute import rpcapi as compute_rpcapi
from nova import exception
from nova.i18n import _, _LE
-from nova.openstack.common import log as logging
from nova.virt.xenapi import pool_states
from nova.virt.xenapi import vm_utils
diff --git a/nova/virt/xenapi/vm_utils.py b/nova/virt/xenapi/vm_utils.py
index 4c086e0ee1..cf2b8c747d 100644
--- a/nova/virt/xenapi/vm_utils.py
+++ b/nova/virt/xenapi/vm_utils.py
@@ -30,6 +30,7 @@ from xml.parsers import expat
from eventlet import greenthread
from oslo_concurrency import processutils
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import excutils
from oslo_utils import importutils
from oslo_utils import strutils
@@ -45,7 +46,6 @@ from nova.compute import vm_mode
from nova import exception
from nova.i18n import _, _LE, _LI, _LW
from nova.network import model as network_model
-from nova.openstack.common import log as logging
from nova.openstack.common import versionutils
from nova import utils
from nova.virt import configdrive
diff --git a/nova/virt/xenapi/vmops.py b/nova/virt/xenapi/vmops.py
index 270d309550..e56f4d97ae 100644
--- a/nova/virt/xenapi/vmops.py
+++ b/nova/virt/xenapi/vmops.py
@@ -25,6 +25,7 @@ import zlib
from eventlet import greenthread
import netaddr
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import excutils
from oslo_utils import importutils
@@ -44,7 +45,6 @@ from nova import context as nova_context
from nova import exception
from nova.i18n import _, _LE, _LI, _LW
from nova import objects
-from nova.openstack.common import log as logging
from nova.pci import manager as pci_manager
from nova import utils
from nova.virt import configdrive
diff --git a/nova/virt/xenapi/volume_utils.py b/nova/virt/xenapi/volume_utils.py
index 29a8df1a8e..47c3559e31 100644
--- a/nova/virt/xenapi/volume_utils.py
+++ b/nova/virt/xenapi/volume_utils.py
@@ -23,10 +23,10 @@ import string
from eventlet import greenthread
from oslo_config import cfg
+from oslo_log import log as logging
from nova import exception
from nova.i18n import _, _LW
-from nova.openstack.common import log as logging
xenapi_volume_utils_opts = [
cfg.IntOpt('introduce_vdi_retry_wait',
diff --git a/nova/virt/xenapi/volumeops.py b/nova/virt/xenapi/volumeops.py
index a59f58b275..f816853c53 100644
--- a/nova/virt/xenapi/volumeops.py
+++ b/nova/virt/xenapi/volumeops.py
@@ -17,11 +17,11 @@
Management class for Storage-related functions (attach, detach, etc).
"""
+from oslo_log import log as logging
from oslo_utils import excutils
from nova import exception
from nova.i18n import _LI, _LW
-from nova.openstack.common import log as logging
from nova.virt.xenapi import vm_utils
from nova.virt.xenapi import volume_utils
diff --git a/nova/vnc/xvp_proxy.py b/nova/vnc/xvp_proxy.py
index 29de1c7495..726c3bcab4 100644
--- a/nova/vnc/xvp_proxy.py
+++ b/nova/vnc/xvp_proxy.py
@@ -23,12 +23,12 @@ import eventlet.green
import eventlet.greenio
import eventlet.wsgi
from oslo_config import cfg
+from oslo_log import log as logging
import webob
from nova.consoleauth import rpcapi as consoleauth_rpcapi
from nova import context
from nova.i18n import _LI
-from nova.openstack.common import log as logging
from nova import version
from nova import wsgi
diff --git a/nova/volume/cinder.py b/nova/volume/cinder.py
index e27ef14cc3..6728fc6c3c 100644
--- a/nova/volume/cinder.py
+++ b/nova/volume/cinder.py
@@ -27,6 +27,7 @@ from cinderclient.v1 import client as v1_client
from keystoneclient import exceptions as keystone_exception
from keystoneclient import session
from oslo_config import cfg
+from oslo_log import log as logging
from oslo_utils import strutils
import six.moves.urllib.parse as urlparse
@@ -34,7 +35,6 @@ from nova import availability_zones as az
from nova import exception
from nova.i18n import _
from nova.i18n import _LW
-from nova.openstack.common import log as logging
cinder_opts = [
cfg.StrOpt('catalog_info',
diff --git a/nova/volume/encryptors/__init__.py b/nova/volume/encryptors/__init__.py
index 959439ea6c..db48a21894 100644
--- a/nova/volume/encryptors/__init__.py
+++ b/nova/volume/encryptors/__init__.py
@@ -14,10 +14,10 @@
# under the License.
+from oslo_log import log as logging
from oslo_utils import importutils
from nova.i18n import _LE
-from nova.openstack.common import log as logging
from nova.volume.encryptors import nop
diff --git a/nova/volume/encryptors/base.py b/nova/volume/encryptors/base.py
index 113fefabdb..d1babee3a5 100644
--- a/nova/volume/encryptors/base.py
+++ b/nova/volume/encryptors/base.py
@@ -16,10 +16,10 @@
import abc
+from oslo_log import log as logging
import six
from nova import keymgr
-from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
diff --git a/nova/volume/encryptors/cryptsetup.py b/nova/volume/encryptors/cryptsetup.py
index 49fe034052..a4343a1cbf 100644
--- a/nova/volume/encryptors/cryptsetup.py
+++ b/nova/volume/encryptors/cryptsetup.py
@@ -16,7 +16,8 @@
import os
-from nova.openstack.common import log as logging
+from oslo_log import log as logging
+
from nova import utils
from nova.volume.encryptors import base
diff --git a/nova/volume/encryptors/luks.py b/nova/volume/encryptors/luks.py
index 96b81da309..9ade55307b 100644
--- a/nova/volume/encryptors/luks.py
+++ b/nova/volume/encryptors/luks.py
@@ -15,10 +15,10 @@
from oslo_concurrency import processutils
+from oslo_log import log as logging
from nova.i18n import _LI
from nova.i18n import _LW
-from nova.openstack.common import log as logging
from nova import utils
from nova.volume.encryptors import cryptsetup
diff --git a/nova/volume/encryptors/nop.py b/nova/volume/encryptors/nop.py
index 72066356c9..64ed8290a0 100644
--- a/nova/volume/encryptors/nop.py
+++ b/nova/volume/encryptors/nop.py
@@ -13,8 +13,8 @@
# License for the specific language governing permissions and limitations
# under the License.
+from oslo_log import log as logging
-from nova.openstack.common import log as logging
from nova.volume.encryptors import base
diff --git a/nova/wsgi.py b/nova/wsgi.py
index f284a34130..ba3f0c939f 100644
--- a/nova/wsgi.py
+++ b/nova/wsgi.py
@@ -28,6 +28,8 @@ import eventlet
import eventlet.wsgi
import greenlet
from oslo_config import cfg
+from oslo_log import log as logging
+from oslo_log import loggers
from oslo_utils import excutils
from paste import deploy
import routes.middleware
@@ -36,7 +38,6 @@ import webob.exc
from nova import exception
from nova.i18n import _, _LE, _LI
-from nova.openstack.common import log as logging
wsgi_opts = [
cfg.StrOpt('api_paste_config',
@@ -114,7 +115,7 @@ class Server(object):
self.pool_size = pool_size or self.default_pool_size
self._pool = eventlet.GreenPool(self.pool_size)
self._logger = logging.getLogger("nova.%s.wsgi.server" % self.name)
- self._wsgi_logger = logging.WritableLogger(self._logger)
+ self._wsgi_logger = loggers.WritableLogger(self._logger)
self._use_ssl = use_ssl
self._max_url_len = max_url_len
self.client_socket_timeout = CONF.client_socket_timeout or None
diff --git a/openstack-common.conf b/openstack-common.conf
index bea9a2b67f..0cdf51b104 100644
--- a/openstack-common.conf
+++ b/openstack-common.conf
@@ -4,10 +4,8 @@
module=cliutils
module=eventlet_backdoor
module=fileutils
-module=fixture.logging
module=imageutils
module=local
-module=log
module=loopingcall
module=memorycache
module=periodic_task
diff --git a/requirements.txt b/requirements.txt
index 4457d35723..7b06735a4f 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -32,6 +32,7 @@ websockify>=0.6.0,<0.7
oslo.concurrency>=1.4.1 # Apache-2.0
oslo.config>=1.6.0 # Apache-2.0
oslo.context>=0.1.0 # Apache-2.0
+oslo.log>=0.1.0 # Apache-2.0
oslo.serialization>=1.2.0 # Apache-2.0
oslo.utils>=1.2.0 # Apache-2.0
oslo.db>=1.4.1 # Apache-2.0