Handle SIGHUP in dhcp and l3 agents

All launchers implemented in common.service require each service to
implement reset method because it is called in case a process
receives a SIGHUP.

This change adds the reset method to neutron.service.Service class
which is used to start dhcp and l3 agents.

Now dhcp and l3 agents don't die on receiving SIGHUP and support
reloading policy_path and logging options in config.

Partial-Bug: #1276694
Change-Id: I96010e44928a665bea546865b2c81bde4ed0adf2
This commit is contained in:
Elena Ezhova 2015-04-07 14:55:50 +03:00
parent 483de6313f
commit d9251d6e35
1 changed files with 5 additions and 0 deletions

View File

@ -32,6 +32,7 @@ from neutron.i18n import _LE, _LI
from neutron import manager
from neutron.openstack.common import loopingcall
from neutron.openstack.common import service as common_service
from neutron import policy
from neutron import wsgi
@ -286,6 +287,10 @@ class Service(n_rpc.Service):
except Exception:
LOG.exception(_LE("Exception occurs when waiting for timer"))
def reset(self):
config.setup_logging()
policy.refresh()
def periodic_tasks(self, raise_on_error=False):
"""Tasks to be run at a periodic interval."""
ctxt = context.get_admin_context()