move implementation specific configurations in server.py to v2/reference module. Making the server.py only responsible for loading dispatchers which are configured in monasca.conf file. This change will enable any dispatcher to be loaded according to the configuration file. For example, to config two dispatchers to be served on a server, a monasca.conf file can look like the following: [DEFAULT] dispatcher = v2_ref_metrics dispatcher = v2_ref_alarms If all the reference dispatchers should be served out of one server, then the configuration file may look like this: [DEFAULT] dispatcher = v2_ref_metrics dispatcher = v2_ref_alarms dispatcher = v2_ref_alarm_definitions dispatcher = v2_ref_events dispatcher = v2_ref_transforms dispatcher = v2_ref_notifications One can use the configuration to load any dispatchers which may be developed by third party. This way, to load new dispatchers, one only needs to change the configuration file. This patch set makes the API server a true miscroservice server. Change-Id: I87005f8ff4807e4c818057f1e7866001482a50e1
70 lines
2.6 KiB
INI
Executable File
70 lines
2.6 KiB
INI
Executable File
[metadata]
|
|
name = monasca-api
|
|
|
|
# Juno
|
|
version = 2014.7
|
|
|
|
summary = OpenStack Monitoring Service
|
|
description-file =
|
|
README.md
|
|
author = OpenStack
|
|
author-email = openstack-dev@lists.openstack.org
|
|
home-page = http://www.openstack.org/
|
|
classifier =
|
|
Environment :: OpenStack
|
|
Intended Audience :: Information Technology
|
|
Intended Audience :: System Administrators
|
|
License :: OSI Approved :: Apache Software License
|
|
Operating System :: POSIX :: Linux
|
|
Programming Language :: Python
|
|
Programming Language :: Python :: 2
|
|
Programming Language :: Python :: 2.7
|
|
|
|
[files]
|
|
packages =
|
|
monasca
|
|
|
|
data_files =
|
|
/etc/monasca =
|
|
etc/monasca.conf
|
|
etc/monasca.ini
|
|
|
|
[entry_points]
|
|
console_scripts =
|
|
monasca-api = monasca.api.server:run
|
|
|
|
|
|
monasca.dispatcher =
|
|
sample = monasca.dispatcher.sample_dispatcher:SampleDispatcher
|
|
kafka = monasca.dispatcher.kafka_dispatcher:KafkaDispatcher
|
|
v2_ref_metrics = monasca.v2.reference.metrics:Metrics
|
|
v2_ref_alarm_definitions = monasca.v2.reference.alarm_definitions:AlarmDefinitions
|
|
v2_ref_alarms = monasca.v2.reference.alarms:Alarms
|
|
v2_ref_events = monasca.v2.reference.events:Events
|
|
v2_ref_transforms = monasca.v2.reference.transforms:Transforms
|
|
v2_ref_notifications = monasca.v2.reference.notifications:Notifications
|
|
demo = monasca.v2.reference.demo_dispatcher:DemoDispatcher
|
|
|
|
paste.filter_factory =
|
|
login = monasca.middleware.login:filter_factory
|
|
inspector = monasca.middleware.inspector:filter_factory
|
|
metric_validator = monasca.middleware.metric_validator:filter_factory
|
|
mock_auth_filter = monasca.middleware.mock_auth_filter:filter_factory
|
|
|
|
monasca.messaging =
|
|
fake = monasca.common.messaging.fake_publisher:FakePublisher
|
|
kafka = monasca.common.messaging.kafka_publisher:KafkaPublisher
|
|
rabbitmq = monasca.common.messaging.rabbitmq_publisher:RabbitmqPublisher
|
|
|
|
monasca.repositories =
|
|
fake_metrics_repo = monasca.common.repositories.fake.metrics_repository:MetricsRepository
|
|
influxdb_metrics_repo = monasca.common.repositories.influxdb.metrics_repository:MetricsRepository
|
|
fake_events_repo = monasca.common.repositories.fake.events_repository:EventsRepository
|
|
mysql_transforms_repo = monasca.common.repositories.mysql.transforms_repository:TransformsRepository
|
|
mysql_alarm_definitions_repo = monasca.common.repositories.mysql.alarm_definitions_repository:AlarmDefinitionsRepository
|
|
mysql_alarms_repo = monasca.common.repositories.mysql.alarms_repository:AlarmsRepository
|
|
mysql_notifications_repo = monasca.common.repositories.mysql.notifications_repository:NotificationsRepository
|
|
|
|
[pbr]
|
|
warnerrors = True
|