ceilometer-collector start failed installed by devstack, with latest commit ceilometer: 23ff2f9bbfc14e435c4c04ddddfba473cf2a829b and devstack: 60ffc6165037827ecae3208f79c69aca74fa46bf, the log is below:
*******************************************
2012-12-13 11:35:06 25819 DEBUG ceilometer.openstack.common.service [-] rpc_cast_timeout = 30 log_opt_values /opt/stack/ceilometer/ceilometer/openstack/common/cfg.py:1333
2012-12-13 11:35:06 25819 DEBUG ceilometer.openstack.common.service [-] rpc_conn_pool_size = 30 log_opt_values /opt/stack/ceilometer/ceilometer/openstack/common/cfg.py:1333
2012-12-13 11:35:06 25819 DEBUG ceilometer.openstack.common.service [-] rpc_response_timeout = 60 log_opt_values /opt/stack/ceilometer/ceilometer/openstack/common/cfg.py:1333
2012-12-13 11:35:06 25819 DEBUG ceilometer.openstack.common.service [-] rpc_thread_pool_size = 64 log_opt_values /opt/stack/ceilometer/ceilometer/openstack/common/cfg.py:1333
2012-12-13 11:35:06 25819 DEBUG ceilometer.openstack.common.service [-] syslog_log_facility = LOG_USER log_opt_values /opt/stack/ceilometer/ceilometer/openstack/common/cfg.py:1333
2012-12-13 11:35:06 25819 DEBUG ceilometer.openstack.common.service [-] use_stderr = True log_opt_values /opt/stack/ceilometer/ceilometer/openstack/common/cfg.py:1333
2012-12-13 11:35:06 25819 DEBUG ceilometer.openstack.common.service [-] use_syslog = False log_opt_values /opt/stack/ceilometer/ceilometer/openstack/common/cfg.py:1333
2012-12-13 11:35:06 25819 DEBUG ceilometer.openstack.common.service [-] verbose = True log_opt_values /opt/stack/ceilometer/ceilometer/openstack/common/cfg.py:1333
2012-12-13 11:35:06 25819 DEBUG ceilometer.openstack.common.service [-] ******************************************************************************** log_opt_values /opt/stack/ceilometer/ceilometer/openstack/common/cfg.py:1343
2012-12-13 11:35:06 25819 INFO ceilometer.openstack.common.rpc.common [-] Connected to AMQP server on localhost:5672
2012-12-13 11:35:06 25819 DEBUG ceilometer.openstack.common.rpc.service [-] Creating Consumer connection for Service ceilometer.agent.central start /opt/stack/ceilometer/ceilometer/openstack/common/rpc/service.py:48
2012-12-13 11:35:06 25819 ERROR ceilometer.openstack.common.loopingcall [-] in looping call
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.loopingcall Traceback (most recent call last):
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.loopingcall File "/opt/stack/ceilometer/ceilometer/openstack/common/loopingcall.py", line 65, in _inner
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.loopingcall self.f(*self.args, **self.kw)
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.loopingcall File "/opt/stack/ceilometer/ceilometer/central/manager.py", line 70, in periodic_tasks
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.loopingcall context=context,
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.loopingcall File "/usr/local/lib/python2.7/dist-packages/stevedore/extension.py", line 118, in map
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.loopingcall raise RuntimeError('No %s extensions found' % self.namespace)
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.loopingcall RuntimeError: No ceilometer.poll.central extensions found
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.loopingcall
2012-12-13 11:35:06 25819 ERROR ceilometer.openstack.common.threadgroup [-] No ceilometer.poll.central extensions found
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup Traceback (most recent call last):
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup File "/opt/stack/ceilometer/ceilometer/openstack/common/threadgroup.py", line 105, in wait
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup x.wait()
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup File "/opt/stack/ceilometer/ceilometer/openstack/common/loopingcall.py", line 88, in wait
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup return self.done.wait()
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup File "/usr/lib/python2.7/dist-packages/eventlet/event.py", line 116, in wait
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup return hubs.get_hub().switch()
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup File "/usr/lib/python2.7/dist-packages/eventlet/hubs/hub.py", line 177, in switch
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup return self.greenlet.switch()
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup File "/opt/stack/ceilometer/ceilometer/openstack/common/loopingcall.py", line 65, in _inner
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup self.f(*self.args, **self.kw)
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup File "/opt/stack/ceilometer/ceilometer/central/manager.py", line 70, in periodic_tasks
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup context=context,
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup File "/usr/local/lib/python2.7/dist-packages/stevedore/extension.py", line 118, in map
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup raise RuntimeError('No %s extensions found' % self.namespace)
2012-12-13 11:35:06 25819 TRACE ceilometer.openstack.common.threadgroup RuntimeError: No ceilometer.poll.central extensions found
********************************************
2012-12-13 11:35:07 25881 CRITICAL ceilometer [-] No ceilometer.collector extensions found
2012-12-13 11:35:07 25881 TRACE ceilometer Traceback (most recent call last):
2012-12-13 11:35:07 25881 TRACE ceilometer File "/opt/stack/ceilometer/bin/ceilometer-collector", line 37, in <module>
2012-12-13 11:35:07 25881 TRACE ceilometer launcher.wait()
2012-12-13 11:35:07 25881 TRACE ceilometer File "/opt/stack/ceilometer/ceilometer/openstack/common/service.py", line 126, in wait
2012-12-13 11:35:07 25881 TRACE ceilometer super(ServiceLauncher, self).wait()
2012-12-13 11:35:07 25881 TRACE ceilometer File "/opt/stack/ceilometer/ceilometer/openstack/common/service.py", line 98, in wait
2012-12-13 11:35:07 25881 TRACE ceilometer service.wait()
2012-12-13 11:35:07 25881 TRACE ceilometer File "/usr/lib/python2.7/dist-packages/eventlet/greenthread.py", line 166, in wait
2012-12-13 11:35:07 25881 TRACE ceilometer return self._exit_event.wait()
2012-12-13 11:35:07 25881 TRACE ceilometer File "/usr/lib/python2.7/dist-packages/eventlet/event.py", line 116, in wait
2012-12-13 11:35:07 25881 TRACE ceilometer return hubs.get_hub().switch()
2012-12-13 11:35:07 25881 TRACE ceilometer File "/usr/lib/python2.7/dist-packages/eventlet/hubs/hub.py", line 177, in switch
2012-12-13 11:35:07 25881 TRACE ceilometer return self.greenlet.switch()
2012-12-13 11:35:07 25881 TRACE ceilometer File "/usr/lib/python2.7/dist-packages/eventlet/greenthread.py", line 192, in main
2012-12-13 11:35:07 25881 TRACE ceilometer result = function(*args, **kwargs)
2012-12-13 11:35:07 25881 TRACE ceilometer File "/opt/stack/ceilometer/ceilometer/openstack/common/service.py", line 68, in run_service
2012-12-13 11:35:07 25881 TRACE ceilometer service.start()
2012-12-13 11:35:07 25881 TRACE ceilometer File "/opt/stack/ceilometer/ceilometer/collector/service.py", line 51, in start
2012-12-13 11:35:07 25881 TRACE ceilometer super(CollectorService, self).start()
2012-12-13 11:35:07 25881 TRACE ceilometer File "/opt/stack/ceilometer/ceilometer/service.py", line 66, in start
2012-12-13 11:35:07 25881 TRACE ceilometer super(PeriodicService, self).start()
2012-12-13 11:35:07 25881 TRACE ceilometer File "/opt/stack/ceilometer/ceilometer/openstack/common/rpc/service.py", line 63, in start
2012-12-13 11:35:07 25881 TRACE ceilometer self.manager.initialize_service_hook(self)
2012-12-13 11:35:07 25881 TRACE ceilometer File "/opt/stack/ceilometer/ceilometer/collector/service.py", line 68, in initialize_service_hook
2012-12-13 11:35:07 25881 TRACE ceilometer self.ext_manager.map(self._setup_subscription)
2012-12-13 11:35:07 25881 TRACE ceilometer File "/usr/local/lib/python2.7/dist-packages/stevedore/extension.py", line 118, in map
2012-12-13 11:35:07 25881 TRACE ceilometer raise RuntimeError('No %s extensions found' % self.namespace)
2012-12-13 11:35:07 25881 TRACE ceilometer RuntimeError: No ceilometer.collector extensions found
The reason is that the pecan module which ceilometer depends on requires WebOb>=1.2dev, while the OS already have a WebOb=1.1.1.
However, running "sudo pip install -r ceilometer. egg-info/ requirement. txt" doesn't upgrade the WebOb, but running "sudo pip install pecan" did the upgrading.