Add python hostmonitor only main process

Implement python hostmonitor with only main process.

Change-Id: Ie55067f051686b6f8c7c6803c1e78c73bb2bba8a
Implements: bp pythonize-host-and-process-monitor
This commit is contained in:
Kengo Takahara 2017-01-26 15:10:05 +09:00 committed by takahara.kengo
parent fd7b703035
commit 6a6cc0a892
5 changed files with 75 additions and 0 deletions

View File

@ -0,0 +1,37 @@
# Copyright(c) 2016 Nippon Telegraph and Telephone Corporation
#
# 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.
"""Starter script for Masakari Host Monitor."""
import sys
from oslo_log import log as logging
import masakarimonitors.conf
from masakarimonitors import config
from masakarimonitors import service
from masakarimonitors import utils
CONF = masakarimonitors.conf.CONF
def main():
config.parse_args(sys.argv)
logging.setup(CONF, "masakarimonitors")
utils.monkey_patch()
server = service.Service.create(binary='masakarimonitors-hostmonitor')
service.serve(server)
service.wait()

View File

@ -34,6 +34,10 @@ Possible values:
default='masakarimonitors.processmonitor.process'
'.ProcessmonitorManager',
help='Full class name for the Manager for processmonitor.'),
cfg.StrOpt('hostmonitor_manager',
default='masakarimonitors.hostmonitor.host'
'.HostmonitorManager',
help='Full class name for the Manager for hostmonitor.'),
]

View File

View File

@ -0,0 +1,32 @@
# Copyright(c) 2016 Nippon Telegraph and Telephone Corporation
#
# 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.
from oslo_log import log as oslo_logging
from masakarimonitors import manager
LOG = oslo_logging.getLogger(__name__)
class HostmonitorManager(manager.Manager):
"""Manages the masakari-hostmonitor."""
def __init__(self, *args, **kwargs):
super(HostmonitorManager, self).__init__(
service_name="hostmonitor", *args, **kwargs)
def main(self):
"""Main method."""
pass

View File

@ -39,10 +39,12 @@ oslo.config.opts =
oslo.config.opts.defaults =
masakarimonitors.instancemonitor = masakarimonitors.common.config:set_middleware_defaults
masakarimonitors.processmonitor = masakarimonitors.common.config:set_middleware_defaults
masakarimonitors.hostmonitor = masakarimonitors.common.config:set_middleware_defaults
console_scripts =
masakari-instancemonitor = masakarimonitors.cmd.instancemonitor:main
masakari-processmonitor = masakarimonitors.cmd.processmonitor:main
masakari-hostmonitor = masakarimonitors.cmd.hostmonitor:main
[build_sphinx]
source-dir = doc/source