Register GMR with config
As an operator, we want to set oslo_reports/file_event_handler because when running behind a wsgi server, GMR cannot register the Signal to be trigger. The parameter file_event_handler has been designed for this specific use case but it was not used correctly by neutron. Closes-Bug: #2021814 Change-Id: Id13de1a3f9ea2eaaa7521eedf905aa0dd993ff89 Signed-off-by: Arnaud Morin <arnaud.morin@ovhcloud.com>
This commit is contained in:
parent
878ea0dfd5
commit
56821b6aea
|
@ -1,28 +0,0 @@
|
|||
# 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.
|
||||
|
||||
import logging as sys_logging
|
||||
|
||||
from oslo_reports import guru_meditation_report as gmr
|
||||
|
||||
from neutron import version
|
||||
|
||||
# During the call to gmr.TextGuruMeditation.setup_autorun(), Guru Meditation
|
||||
# Report tries to start logging. Set a handler here to accommodate this.
|
||||
logger = sys_logging.getLogger(None)
|
||||
if not logger.handlers:
|
||||
logger.addHandler(sys_logging.StreamHandler())
|
||||
|
||||
_version_string = version.version_info.release_string()
|
||||
gmr.TextGuruMeditation.setup_autorun(version=_version_string)
|
|
@ -16,13 +16,17 @@
|
|||
# If ../neutron/__init__.py exists, add ../ to Python search path, so that
|
||||
# it will override what happens to be installed in /usr/(local/)lib/python...
|
||||
|
||||
import logging as sys_logging
|
||||
import os
|
||||
import sys
|
||||
|
||||
from oslo_config import cfg
|
||||
from oslo_reports import guru_meditation_report as gmr
|
||||
from oslo_reports import opts as gmr_opts
|
||||
|
||||
from neutron._i18n import _
|
||||
from neutron.common import config
|
||||
from neutron import version
|
||||
|
||||
# NOTE(annp): These environment variables are required for deploying
|
||||
# neutron-api under mod_wsgi. Currently, these variables are set as DevStack's
|
||||
|
@ -62,7 +66,22 @@ def _init_configuration():
|
|||
|
||||
|
||||
def boot_server(server_func):
|
||||
# During the call to gmr.TextGuruMeditation.setup_autorun(), Guru
|
||||
# Meditation Report tries to start logging.
|
||||
# Set a handler here to accommodate this.
|
||||
# NOTE(amorin) This was introduced to mitigate bug #1532053 which seems
|
||||
# not triggered anymore.
|
||||
# But, while fixing bug #2021814 we decided to be conservative and keep
|
||||
# this to avoid any further side effect.
|
||||
logger = sys_logging.getLogger(None)
|
||||
if not logger.handlers:
|
||||
logger.addHandler(sys_logging.StreamHandler())
|
||||
|
||||
_version_string = version.version_info.release_string()
|
||||
_init_configuration()
|
||||
gmr_opts.set_defaults(cfg.CONF)
|
||||
gmr.TextGuruMeditation.setup_autorun(version=_version_string,
|
||||
conf=cfg.CONF)
|
||||
try:
|
||||
return server_func()
|
||||
except KeyboardInterrupt:
|
||||
|
|
Loading…
Reference in New Issue