Use console scripts for ceilometer-agent-central
Blueprint: setuptools-console-scripts Change-Id: Ia39365c87cf7adccd7bb6e4ed786b87be38ddaea Signed-off-by: Julien Danjou <julien@danjou.info>
This commit is contained in:
parent
bab2ca7fec
commit
daa393b486
@ -1,42 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- encoding: utf-8 -*-
|
||||
#
|
||||
# Copyright © 2012 eNovance <licensing@enovance.com>
|
||||
#
|
||||
# Author: Julien Danjou <julien@danjou.info>
|
||||
#
|
||||
# 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 eventlet
|
||||
eventlet.monkey_patch()
|
||||
import sys
|
||||
|
||||
from oslo.config import cfg
|
||||
|
||||
from ceilometer.openstack.common import gettextutils
|
||||
gettextutils.install('ceilometer')
|
||||
|
||||
from ceilometer.central import manager
|
||||
from ceilometer.service import prepare_service
|
||||
from ceilometer.openstack.common import service
|
||||
from ceilometer.openstack.common.rpc import service as rpc_service
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
prepare_service(sys.argv)
|
||||
mgr = manager.AgentManager()
|
||||
topic = 'ceilometer.agent.central'
|
||||
ceilo = rpc_service.Service(cfg.CONF.host,
|
||||
topic, mgr)
|
||||
launcher = service.launch(ceilo)
|
||||
launcher.wait()
|
@ -16,12 +16,18 @@
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
import eventlet
|
||||
from keystoneclient.v2_0 import client as ksclient
|
||||
from oslo.config import cfg
|
||||
import sys
|
||||
|
||||
from ceilometer import agent
|
||||
from ceilometer import extension_manager
|
||||
from ceilometer.openstack.common import gettextutils
|
||||
from ceilometer.openstack.common import log
|
||||
from ceilometer.openstack.common import service as os_service
|
||||
from ceilometer.openstack.common.rpc import service as rpc_service
|
||||
from ceilometer import service
|
||||
|
||||
OPTS = [
|
||||
cfg.ListOpt('disabled_central_pollsters',
|
||||
@ -75,3 +81,13 @@ class AgentManager(agent.AgentManager):
|
||||
auth_url=cfg.CONF.service_credentials.os_auth_url)
|
||||
|
||||
super(AgentManager, self).interval_task(task)
|
||||
|
||||
|
||||
def agent_central():
|
||||
# TODO(jd) move into prepare_service gettextutils and eventlet?
|
||||
eventlet.monkey_patch()
|
||||
gettextutils.install('ceilometer')
|
||||
service.prepare_service(sys.argv)
|
||||
os_service.launch(rpc_service.Service(cfg.CONF.host,
|
||||
'ceilometer.agent.central',
|
||||
AgentManager())).wait()
|
||||
|
@ -36,12 +36,10 @@ the computeagent loads all plugins defined in the namespace
|
||||
``ceilometer.poll.compute``, then periodically calls their
|
||||
:func:`get_counters` method.
|
||||
|
||||
The central agent polls other types of resources from a management
|
||||
server. The central agent is defined in
|
||||
``bin/ceilometer-agent-central`` and
|
||||
``ceilometer/central/manager.py``. It loads plugins from the
|
||||
``ceilometer.poll.central`` namespace and polls them by calling their
|
||||
:func:`get_counters` method.
|
||||
The central agent polls other types of resources from a management server.
|
||||
The central agent is defined in ``ceilometer/central/manager.py``. It loads
|
||||
plugins from the ``ceilometer.poll.central`` namespace and polls them by
|
||||
calling their :func:`get_counters` method.
|
||||
|
||||
Plugins
|
||||
=======
|
||||
|
@ -274,7 +274,7 @@ Installing the Central Agent
|
||||
|
||||
::
|
||||
|
||||
$ ./bin/ceilometer-agent-central
|
||||
$ ceilometer-agent-central
|
||||
|
||||
|
||||
Installing the API Server
|
||||
|
@ -28,7 +28,6 @@ packages =
|
||||
ceilometer
|
||||
scripts =
|
||||
bin/ceilometer-agent-compute
|
||||
bin/ceilometer-agent-central
|
||||
bin/ceilometer-api
|
||||
bin/ceilometer-dbsync
|
||||
|
||||
@ -89,6 +88,7 @@ paste.filter_factory =
|
||||
swift = ceilometer.objectstore.swift_middleware:filter_factory
|
||||
|
||||
console_scripts =
|
||||
ceilometer-agent-central = ceilometer.central.manager:agent_central
|
||||
ceilometer-collector = ceilometer.collector.service:collector
|
||||
ceilometer-collector-udp = ceilometer.collector.service:udp_collector
|
||||
|
||||
|
2
tox.ini
2
tox.ini
@ -24,7 +24,7 @@ deps = pep8==1.4.5
|
||||
flake8==2.0
|
||||
hacking>=0.5.3,<0.6
|
||||
commands =
|
||||
flake8 ceilometer setup.py bin/ceilometer-agent-central bin/ceilometer-agent-compute bin/ceilometer-api tests
|
||||
flake8 ceilometer setup.py bin/ceilometer-agent-compute bin/ceilometer-api tests
|
||||
|
||||
[testenv:docs]
|
||||
deps = -r{toxinidir}/requirements.txt
|
||||
|
Loading…
x
Reference in New Issue
Block a user