From: Andrew Boik Date: Fri, 10 Oct 2014 17:13:45 +0000 (-0400) Subject: Update VPN logging to use new i18n functions X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=2c5f99a4b1376a46b8c1e1f4e82a015c2d29aa1f;p=openstack-build%2Fneutron-build.git Update VPN logging to use new i18n functions For log messages in neutron/services/vpn and neutron/db/vpn, replace _() marker functions with log-level-specific marker functions: _LI(), _LW(), _LE() from oslo.i18n. Also, remove _() functions for debug log messages as debug level log messages should not be translated. Change-Id: I07fcf25bb6344c47e74d6ee23f9bc08e4b560679 Closes-Bug: #1379811 --- diff --git a/neutron/db/vpn/vpn_db.py b/neutron/db/vpn/vpn_db.py index 6ff9b7c96..4de2a7145 100644 --- a/neutron/db/vpn/vpn_db.py +++ b/neutron/db/vpn/vpn_db.py @@ -28,6 +28,7 @@ from neutron.db.vpn import vpn_validator from neutron.extensions import vpnaas from neutron import manager from neutron.openstack.common import excutils +from neutron.openstack.common.gettextutils import _LW from neutron.openstack.common import log as logging from neutron.openstack.common import uuidutils from neutron.plugins.common import constants @@ -646,7 +647,7 @@ class VPNPluginRpcDbMixin(): vpnservice_db = self._get_vpnservice( context, vpnservice['id']) except vpnaas.VPNServiceNotFound: - LOG.warn(_('vpnservice %s in db is already deleted'), + LOG.warn(_LW('vpnservice %s in db is already deleted'), vpnservice['id']) continue diff --git a/neutron/services/vpn/device_drivers/cisco_csr_rest_client.py b/neutron/services/vpn/device_drivers/cisco_csr_rest_client.py index 04241b743..8ddefb1f1 100644 --- a/neutron/services/vpn/device_drivers/cisco_csr_rest_client.py +++ b/neutron/services/vpn/device_drivers/cisco_csr_rest_client.py @@ -19,6 +19,7 @@ import requests from requests import exceptions as r_exc from neutron.openstack.common import jsonutils +from neutron.openstack.common.gettextutils import _LE, _LW from neutron.openstack.common import log as logging @@ -84,7 +85,7 @@ class CsrRestClient(object): and 'detail' fields). """ if method in ('POST', 'GET') and self.status == requests.codes.OK: - LOG.debug(_('RESPONSE: %s'), response.json()) + LOG.debug('RESPONSE: %s', response.json()) return response.json() if method == 'POST' and self.status == requests.codes.CREATED: return response.headers.get('location', '') @@ -97,21 +98,21 @@ class CsrRestClient(object): def _request(self, method, url, **kwargs): """Perform REST request and save response info.""" try: - LOG.debug(_("%(method)s: Request for %(resource)s payload: " - "%(payload)s"), + LOG.debug("%(method)s: Request for %(resource)s payload: " + "%(payload)s", {'method': method.upper(), 'resource': url, 'payload': kwargs.get('data')}) start_time = time.time() response = self.session.request(method, url, verify=False, timeout=self.timeout, **kwargs) - LOG.debug(_("%(method)s Took %(time).2f seconds to process"), + LOG.debug("%(method)s Took %(time).2f seconds to process", {'method': method.upper(), 'time': time.time() - start_time}) except (r_exc.Timeout, r_exc.SSLError) as te: # Should never see SSLError, unless requests package is old (<2.0) timeout_val = 0.0 if self.timeout is None else self.timeout - LOG.warning(_("%(method)s: Request timeout%(ssl)s " - "(%(timeout).3f sec) for CSR(%(host)s)"), + LOG.warning(_LW("%(method)s: Request timeout%(ssl)s " + "(%(timeout).3f sec) for CSR(%(host)s)"), {'method': method, 'timeout': timeout_val, 'ssl': '(SSLError)' @@ -119,17 +120,18 @@ class CsrRestClient(object): 'host': self.host}) self.status = requests.codes.REQUEST_TIMEOUT except r_exc.ConnectionError: - LOG.exception(_("%(method)s: Unable to connect to CSR(%(host)s)"), + LOG.exception(_LE("%(method)s: Unable to connect to " + "CSR(%(host)s)"), {'method': method, 'host': self.host}) self.status = requests.codes.NOT_FOUND except Exception as e: - LOG.error(_("%(method)s: Unexpected error for CSR (%(host)s): " - "%(error)s"), + LOG.error(_LE("%(method)s: Unexpected error for CSR (%(host)s): " + "%(error)s"), {'method': method, 'host': self.host, 'error': e}) self.status = requests.codes.INTERNAL_SERVER_ERROR else: self.status = response.status_code - LOG.debug(_("%(method)s: Completed [%(status)s]"), + LOG.debug("%(method)s: Completed [%(status)s]", {'method': method, 'status': self.status}) return self._response_info_for(response, method) @@ -144,16 +146,16 @@ class CsrRestClient(object): headers = {'Content-Length': '0', 'Accept': 'application/json'} headers.update(HEADER_CONTENT_TYPE_JSON) - LOG.debug(_("%(auth)s with CSR %(host)s"), + LOG.debug("%(auth)s with CSR %(host)s", {'auth': 'Authenticating' if self.token is None else 'Reauthenticating', 'host': self.host}) self.token = None response = self._request("POST", url, headers=headers, auth=self.auth) if response: self.token = response['token-id'] - LOG.debug(_("Successfully authenticated with CSR %s"), self.host) + LOG.debug("Successfully authenticated with CSR %s", self.host) return True - LOG.error(_("Failed authentication with CSR %(host)s [%(status)s]"), + LOG.error(_LE("Failed authentication with CSR %(host)s [%(status)s]"), {'host': self.host, 'status': self.status}) def _do_request(self, method, resource, payload=None, more_headers=None, @@ -188,7 +190,7 @@ class CsrRestClient(object): headers=headers) if self.status != requests.codes.REQUEST_TIMEOUT: return response - LOG.error(_("%(method)s: Request timeout for CSR(%(host)s)"), + LOG.error(_LE("%(method)s: Request timeout for CSR(%(host)s)"), {'method': method, 'host': self.host}) def get_request(self, resource, full_url=False): diff --git a/neutron/services/vpn/device_drivers/cisco_ipsec.py b/neutron/services/vpn/device_drivers/cisco_ipsec.py index b024f333a..0eb3871d1 100644 --- a/neutron/services/vpn/device_drivers/cisco_ipsec.py +++ b/neutron/services/vpn/device_drivers/cisco_ipsec.py @@ -23,6 +23,7 @@ import six from neutron.common import exceptions from neutron.common import rpc as n_rpc from neutron import context as ctx +from neutron.openstack.common.gettextutils import _LE, _LI, _LW from neutron.openstack.common import lockutils from neutron.openstack.common import log as logging from neutron.openstack.common import loopingcall @@ -125,7 +126,7 @@ class CiscoCsrIPsecDriver(device_drivers.DeviceDriver): def vpnservice_updated(self, context, **kwargs): """Handle VPNaaS service driver change notifications.""" - LOG.debug(_("Handling VPN service update notification '%s'"), + LOG.debug("Handling VPN service update notification '%s'", kwargs.get('reason', '')) self.sync(context, []) @@ -147,20 +148,20 @@ class CiscoCsrIPsecDriver(device_drivers.DeviceDriver): ipsec_conn = vpn_service.conn_state[conn_id] config_changed = ipsec_conn.check_for_changes(conn_data) if config_changed: - LOG.debug(_("Update: Existing connection %s changed"), conn_id) + LOG.debug("Update: Existing connection %s changed", conn_id) ipsec_conn.delete_ipsec_site_connection(context, conn_id) ipsec_conn.create_ipsec_site_connection(context, conn_data) ipsec_conn.conn_info = conn_data if ipsec_conn.forced_down: if vpn_service.is_admin_up and conn_is_admin_up: - LOG.debug(_("Update: Connection %s no longer admin down"), + LOG.debug("Update: Connection %s no longer admin down", conn_id) ipsec_conn.set_admin_state(is_up=True) ipsec_conn.forced_down = False else: if not vpn_service.is_admin_up or not conn_is_admin_up: - LOG.debug(_("Update: Connection %s forced to admin down"), + LOG.debug("Update: Connection %s forced to admin down", conn_id) ipsec_conn.set_admin_state(is_up=False) ipsec_conn.forced_down = True @@ -168,12 +169,12 @@ class CiscoCsrIPsecDriver(device_drivers.DeviceDriver): ipsec_conn = vpn_service.create_connection(conn_data) ipsec_conn.create_ipsec_site_connection(context, conn_data) if not vpn_service.is_admin_up or not conn_is_admin_up: - LOG.debug(_("Update: Created new connection %s in admin down " - "state"), conn_id) + LOG.debug("Update: Created new connection %s in admin down " + "state", conn_id) ipsec_conn.set_admin_state(is_up=False) ipsec_conn.forced_down = True else: - LOG.debug(_("Update: Created new connection %s"), conn_id) + LOG.debug("Update: Created new connection %s", conn_id) ipsec_conn.is_dirty = False ipsec_conn.last_status = conn_data['status'] @@ -184,11 +185,11 @@ class CiscoCsrIPsecDriver(device_drivers.DeviceDriver): """Handle notification for a single VPN Service and its connections.""" vpn_service_id = service_data['id'] if vpn_service_id in self.service_state: - LOG.debug(_("Update: Existing VPN service %s detected"), + LOG.debug("Update: Existing VPN service %s detected", vpn_service_id) vpn_service = self.service_state[vpn_service_id] else: - LOG.debug(_("Update: New VPN service %s detected"), vpn_service_id) + LOG.debug("Update: New VPN service %s detected", vpn_service_id) vpn_service = self.create_vpn_service(service_data) if not vpn_service: return @@ -199,7 +200,7 @@ class CiscoCsrIPsecDriver(device_drivers.DeviceDriver): vpn_service.is_admin_up = service_data[u'admin_state_up'] for conn_data in service_data['ipsec_conns']: self.update_connection(context, vpn_service_id, conn_data) - LOG.debug(_("Update: Completed update processing")) + LOG.debug("Update: Completed update processing") return vpn_service def update_all_services_and_connections(self, context): @@ -229,9 +230,9 @@ class CiscoCsrIPsecDriver(device_drivers.DeviceDriver): for conn_id in service_state.conn_state: service_state.conn_state[conn_id].is_dirty = True connection_count += 1 - LOG.debug(_("Mark: %(service)d VPN services and %(conn)d IPSec " - "connections marked dirty"), {'service': service_count, - 'conn': connection_count}) + LOG.debug("Mark: %(service)d VPN services and %(conn)d IPSec " + "connections marked dirty", {'service': service_count, + 'conn': connection_count}) def remove_unknown_connections(self, context): """Remove connections that are not known by service driver.""" @@ -251,8 +252,8 @@ class CiscoCsrIPsecDriver(device_drivers.DeviceDriver): del self.service_state[vpn_service_id] elif dirty: self.connections_removed = True - LOG.debug(_("Sweep: Removed %(service)d dirty VPN service%(splural)s " - "and %(conn)d dirty IPSec connection%(cplural)s"), + LOG.debug("Sweep: Removed %(service)d dirty VPN service%(splural)s " + "and %(conn)d dirty IPSec connection%(cplural)s", {'service': service_count, 'conn': connection_count, 'splural': 's'[service_count == 1:], 'cplural': 's'[connection_count == 1:]}) @@ -266,22 +267,22 @@ class CiscoCsrIPsecDriver(device_drivers.DeviceDriver): report info will be created for the connection. The combined report data is returned. """ - LOG.debug(_("Report: Collecting status for IPSec connections on VPN " - "service %s"), vpn_service.service_id) + LOG.debug("Report: Collecting status for IPSec connections on VPN " + "service %s", vpn_service.service_id) tunnels = vpn_service.get_ipsec_connections_status() report = {} for connection in vpn_service.conn_state.values(): if connection.forced_down: - LOG.debug(_("Connection %s forced down"), connection.conn_id) + LOG.debug("Connection %s forced down", connection.conn_id) current_status = constants.DOWN else: current_status = connection.find_current_status_in(tunnels) - LOG.debug(_("Connection %(conn)s reported %(status)s"), + LOG.debug("Connection %(conn)s reported %(status)s", {'conn': connection.conn_id, 'status': current_status}) frag = connection.update_status_and_build_report(current_status) if frag: - LOG.debug(_("Report: Adding info for IPSec connection %s"), + LOG.debug("Report: Adding info for IPSec connection %s", connection.conn_id) report.update(frag) return report @@ -301,7 +302,7 @@ class CiscoCsrIPsecDriver(device_drivers.DeviceDriver): pending_handled = plugin_utils.in_pending_status( vpn_service.last_status) vpn_service.update_last_status() - LOG.debug(_("Report: Adding info for VPN service %s"), + LOG.debug("Report: Adding info for VPN service %s", vpn_service.service_id) return {u'id': vpn_service.service_id, u'status': vpn_service.last_status, @@ -323,17 +324,17 @@ class CiscoCsrIPsecDriver(device_drivers.DeviceDriver): def report_status_internal(self, context): """Generate report and send to plugin, if anything changed.""" service_report = [] - LOG.debug(_("Report: Starting status report processing")) + LOG.debug("Report: Starting status report processing") for vpn_service_id, vpn_service in self.service_state.items(): - LOG.debug(_("Report: Collecting status for VPN service %s"), + LOG.debug("Report: Collecting status for VPN service %s", vpn_service_id) report = self.build_report_for_service(vpn_service) if report: service_report.append(report) if service_report: - LOG.info(_("Sending status report update to plugin")) + LOG.info(_LI("Sending status report update to plugin")) self.agent_rpc.update_status(context, service_report) - LOG.debug(_("Report: Completed status report processing")) + LOG.debug("Report: Completed status report processing") return service_report @lockutils.synchronized('vpn-agent', 'neutron-') @@ -617,8 +618,8 @@ class CiscoCsrIPSecConnection(object): LOG.debug("%(resource)s %(which)s is configured", {'resource': resource, 'which': which}) return - LOG.error(_("Unable to create %(resource)s %(which)s: " - "%(status)d"), + LOG.error(_LE("Unable to create %(resource)s %(which)s: " + "%(status)d"), {'resource': resource, 'which': which, 'status': self.csr.status}) # ToDO(pcm): Set state to error @@ -630,7 +631,7 @@ class CiscoCsrIPSecConnection(object): try: getattr(self.csr, create_action)(info) except AttributeError: - LOG.exception(_("Internal error - '%s' is not defined"), + LOG.exception(_LE("Internal error - '%s' is not defined"), create_action) raise CsrResourceCreateFailure(resource=title, which=resource_id) @@ -643,22 +644,22 @@ class CiscoCsrIPSecConnection(object): LOG.debug("%(resource)s configuration %(which)s was removed", {'resource': resource, 'which': which}) else: - LOG.warning(_("Unable to delete %(resource)s %(which)s: " - "%(status)d"), {'resource': resource, - 'which': which, - 'status': status}) + LOG.warning(_LW("Unable to delete %(resource)s %(which)s: " + "%(status)d"), {'resource': resource, + 'which': which, + 'status': status}) def do_rollback(self): """Undo create steps that were completed successfully.""" for step in reversed(self.steps): delete_action = 'delete_%s' % step.action - LOG.debug(_("Performing rollback action %(action)s for " - "resource %(resource)s"), {'action': delete_action, - 'resource': step.title}) + LOG.debug("Performing rollback action %(action)s for " + "resource %(resource)s", {'action': delete_action, + 'resource': step.title}) try: getattr(self.csr, delete_action)(step.resource_id) except AttributeError: - LOG.exception(_("Internal error - '%s' is not defined"), + LOG.exception(_LE("Internal error - '%s' is not defined"), delete_action) raise CsrResourceCreateFailure(resource=step.title, which=step.resource_id) @@ -678,7 +679,7 @@ class CiscoCsrIPSecConnection(object): ike_policy_id = conn_info['cisco']['ike_policy_id'] ipsec_policy_id = conn_info['cisco']['ipsec_policy_id'] - LOG.debug(_('Creating IPSec connection %s'), conn_id) + LOG.debug('Creating IPSec connection %s', conn_id) # Get all the attributes needed to create try: psk_info = self.create_psk_info(psk_id, conn_info) @@ -711,10 +712,10 @@ class CiscoCsrIPSecConnection(object): route_id, 'Static Route') except CsrResourceCreateFailure: self.do_rollback() - LOG.info(_("FAILED: Create of IPSec site-to-site connection %s"), + LOG.info(_LI("FAILED: Create of IPSec site-to-site connection %s"), conn_id) else: - LOG.info(_("SUCCESS: Created IPSec site-to-site connection %s"), + LOG.info(_LI("SUCCESS: Created IPSec site-to-site connection %s"), conn_id) def delete_ipsec_site_connection(self, context, conn_id): @@ -723,13 +724,13 @@ class CiscoCsrIPSecConnection(object): This will be best effort and will continue, if there are any failures. """ - LOG.debug(_('Deleting IPSec connection %s'), conn_id) + LOG.debug('Deleting IPSec connection %s', conn_id) if not self.steps: - LOG.warning(_('Unable to find connection %s'), conn_id) + LOG.warning(_LW('Unable to find connection %s'), conn_id) else: self.do_rollback() - LOG.info(_("SUCCESS: Deleted IPSec site-to-site connection %s"), + LOG.info(_LI("SUCCESS: Deleted IPSec site-to-site connection %s"), conn_id) def set_admin_state(self, is_up): @@ -737,6 +738,7 @@ class CiscoCsrIPSecConnection(object): self.csr.set_ipsec_connection_state(self.tunnel, admin_up=is_up) if self.csr.status != requests.codes.NO_CONTENT: state = "UP" if is_up else "DOWN" - LOG.error(_("Unable to change %(tunnel)s admin state to " - "%(state)s"), {'tunnel': self.tunnel, 'state': state}) + LOG.error(_LE("Unable to change %(tunnel)s admin state to " + "%(state)s"), {'tunnel': self.tunnel, + 'state': state}) raise CsrAdminStateChangeFailure(tunnel=self.tunnel, state=state) diff --git a/neutron/services/vpn/device_drivers/ipsec.py b/neutron/services/vpn/device_drivers/ipsec.py index c19b61ec2..a3375fb0e 100644 --- a/neutron/services/vpn/device_drivers/ipsec.py +++ b/neutron/services/vpn/device_drivers/ipsec.py @@ -28,6 +28,7 @@ from neutron.agent.linux import ip_lib from neutron.agent.linux import utils from neutron.common import rpc as n_rpc from neutron import context +from neutron.openstack.common.gettextutils import _LE from neutron.openstack.common import lockutils from neutron.openstack.common import log as logging from neutron.openstack.common import loopingcall @@ -244,7 +245,7 @@ class BaseSwanProcess(): self.start() except RuntimeError: LOG.exception( - _("Failed to enable vpn process on router %s"), + _LE("Failed to enable vpn process on router %s"), self.id) def disable(self): @@ -255,7 +256,7 @@ class BaseSwanProcess(): self.remove_config() except RuntimeError: LOG.exception( - _("Failed to disable vpn process on router %s"), + _LE("Failed to disable vpn process on router %s"), self.id) @abc.abstractmethod diff --git a/neutron/services/vpn/plugin.py b/neutron/services/vpn/plugin.py index 9353d6c57..c26038610 100644 --- a/neutron/services/vpn/plugin.py +++ b/neutron/services/vpn/plugin.py @@ -15,6 +15,7 @@ # under the License. from neutron.db.vpn import vpn_db +from neutron.openstack.common.gettextutils import _LI from neutron.openstack.common import log as logging from neutron.plugins.common import constants from neutron.services import service_base @@ -41,7 +42,7 @@ class VPNDriverPlugin(VPNPlugin, vpn_db.VPNPluginRpcDbMixin): # Load the service driver from neutron.conf. drivers, default_provider = service_base.load_drivers( constants.VPN, self) - LOG.info(_("VPN plugin using service driver: %s"), default_provider) + LOG.info(_LI("VPN plugin using service driver: %s"), default_provider) self.ipsec_driver = drivers[default_provider] def _get_driver_for_vpnservice(self, vpnservice): diff --git a/neutron/services/vpn/service_drivers/__init__.py b/neutron/services/vpn/service_drivers/__init__.py index e6f2551a7..8703ebf35 100644 --- a/neutron/services/vpn/service_drivers/__init__.py +++ b/neutron/services/vpn/service_drivers/__init__.py @@ -94,8 +94,8 @@ class BaseIPsecVpnAgentApi(n_rpc.RpcProxy): admin_state_up=True, active=True) for l3_agent in l3_agents: - LOG.debug(_('Notify agent at %(topic)s.%(host)s the message ' - '%(method)s %(args)s'), + LOG.debug('Notify agent at %(topic)s.%(host)s the message ' + '%(method)s %(args)s', {'topic': self.topic, 'host': l3_agent.host, 'method': method, diff --git a/neutron/services/vpn/service_drivers/cisco_cfg_loader.py b/neutron/services/vpn/service_drivers/cisco_cfg_loader.py index 771007dd4..d86650834 100644 --- a/neutron/services/vpn/service_drivers/cisco_cfg_loader.py +++ b/neutron/services/vpn/service_drivers/cisco_cfg_loader.py @@ -32,8 +32,7 @@ from oslo.config import cfg from neutron.db import l3_db from neutron.db import models_v2 -from neutron.openstack.common.gettextutils import _LE -from neutron.openstack.common.gettextutils import _LI +from neutron.openstack.common.gettextutils import _LE, _LI from neutron.openstack.common import log as logging from neutron.services.vpn.device_drivers import ( cisco_csr_rest_client as csr_client) @@ -103,8 +102,8 @@ def get_available_csrs_from_config(config_files): try: netaddr.IPAddress(rest_mgmt_ip) except netaddr.core.AddrFormatError: - LOG.error(_("Ignoring Cisco CSR for subnet %s - " - "REST management is not an IP address"), + LOG.error(_LE("Ignoring Cisco CSR for subnet %s - " + "REST management is not an IP address"), for_router) continue try: diff --git a/neutron/services/vpn/service_drivers/cisco_csr_db.py b/neutron/services/vpn/service_drivers/cisco_csr_db.py index f29bec5fe..37f9a8490 100644 --- a/neutron/services/vpn/service_drivers/cisco_csr_db.py +++ b/neutron/services/vpn/service_drivers/cisco_csr_db.py @@ -20,6 +20,7 @@ from neutron.common import exceptions from neutron.db import model_base from neutron.db import models_v2 from neutron.db.vpn import vpn_db +from neutron.openstack.common.gettextutils import _LI from neutron.openstack.common import log as logging LOG = logging.getLogger(__name__) @@ -156,10 +157,10 @@ def determine_csr_policy_id(policy_type, conn_policy_field, map_policy_field, then call lookup_policy() to find the current mapping for that ID. """ csr_id = get_next_available_id(session, map_policy_field, policy_type) - LOG.debug(_("Reserved new CSR ID %(csr_id)d for %(policy)s " - "ID %(policy_id)s"), {'csr_id': csr_id, - 'policy': policy_type, - 'policy_id': policy_id}) + LOG.debug("Reserved new CSR ID %(csr_id)d for %(policy)s " + "ID %(policy_id)s", {'csr_id': csr_id, + 'policy': policy_type, + 'policy_id': policy_id}) return csr_id @@ -183,9 +184,9 @@ def get_tunnel_mapping_for(conn_id, session): try: entry = session.query(IdentifierMap).filter_by( ipsec_site_conn_id=conn_id).one() - LOG.debug(_("Mappings for IPSec connection %(conn)s - " - "tunnel=%(tunnel)s ike_policy=%(csr_ike)d " - "ipsec_policy=%(csr_ipsec)d"), + LOG.debug("Mappings for IPSec connection %(conn)s - " + "tunnel=%(tunnel)s ike_policy=%(csr_ike)d " + "ipsec_policy=%(csr_ipsec)d", {'conn': conn_id, 'tunnel': entry.csr_tunnel_id, 'csr_ike': entry.csr_ike_policy_id, 'csr_ipsec': entry.csr_ipsec_policy_id}) @@ -222,9 +223,9 @@ def create_tunnel_mapping(context, conn_info): msg = _("Attempt to create duplicate entry in Cisco CSR " "mapping table for connection %s") % conn_id raise CsrInternalError(reason=msg) - LOG.info(_("Mapped connection %(conn_id)s to Tunnel%(tunnel_id)d " - "using IKE policy ID %(ike_id)d and IPSec policy " - "ID %(ipsec_id)d"), + LOG.info(_LI("Mapped connection %(conn_id)s to Tunnel%(tunnel_id)d " + "using IKE policy ID %(ike_id)d and IPSec policy " + "ID %(ipsec_id)d"), {'conn_id': conn_id, 'tunnel_id': csr_tunnel_id, 'ike_id': csr_ike_id, 'ipsec_id': csr_ipsec_id}) @@ -234,4 +235,4 @@ def delete_tunnel_mapping(context, conn_info): with context.session.begin(): sess_qry = context.session.query(IdentifierMap) sess_qry.filter_by(ipsec_site_conn_id=conn_id).delete() - LOG.info(_("Removed mapping for connection %s"), conn_id) + LOG.info(_LI("Removed mapping for connection %s"), conn_id) diff --git a/neutron/services/vpn/service_drivers/cisco_ipsec.py b/neutron/services/vpn/service_drivers/cisco_ipsec.py index 55b478b9a..28e3d589f 100644 --- a/neutron/services/vpn/service_drivers/cisco_ipsec.py +++ b/neutron/services/vpn/service_drivers/cisco_ipsec.py @@ -101,8 +101,8 @@ class CiscoCsrIPsecVpnAgentApi(service_drivers.BaseIPsecVpnAgentApi, # NOTE: This is a config error for workaround. At this point we # can't set state of resource to error. return - LOG.debug(_('Notify agent at %(topic)s.%(host)s the message ' - '%(method)s %(args)s for router %(router)s'), + LOG.debug('Notify agent at %(topic)s.%(host)s the message ' + '%(method)s %(args)s for router %(router)s', {'topic': self.topic, 'host': host, 'method': method,