No activity today, make something!
cdent-rhat 20140515

20140515154210 cdent  

Day one: reading.

Hiccups

  • tox needs to be <1.7 for posargs to work.
  • Adjusting tox.ini to use python 3.4 eventlet will not install, this is expected.

Successes

  • tox -e pep8 success
  • tox -e py27 success

Random Thoughts and Questions

It's way premature to be thinking this but looking at ceilometer/storage/sqlalchemy/models.py (chosen semi-randomly as something to inspect) all I can think is "there seems to be an impedance mismatch here". Probably best to go back to reading the docs before making too many assumptions in the code.

Do "push" and "polling" agents put their data on the bus to be collected? If not, should they? In general it seems like the bus could be more central.

Another first impression: Trying to do too much.

Why are alarms dependent on datastore rather than data?

What's the quick and dirty way to get an X-Auth-Token without messing about?

As mentioned during interviews, it would be handy to be able to POST filter querys as templates and get back an id to use that query in subsequent gets, passing template values.

Why both JSON and XML (too many choices, too few constaints)?

Unfortunately, debugging currently has some limitations: You cannot run a specific test, you have to launch the whole test suite. from

Would be great to be able to change that.

Info about Pollster is out of date in relation to the current code. The class has moved as well as been split in two.

(It's lame how much I detest unittest style tests. self.assert*? No thank you!)

Devstack Ceilometer Processes

ceilometer-agent-compute

A service that runs on each compute node (host machines), for producing metering data.

ceilometer-agent-central

A central service that is pluggable with agents that produce metering data.

ceilometer-agent-notification

Listener plugins collect notifications off the message bus, various OpenStack components put notifications on the bus.

ceilometer-collector

A central service that collects metering data from message queues and the other agents, transforms into samples, and stores them.

(Actually it is not (yet) clear who/what is doing the transform into Samples, it doesn't appear to be in the collector.)

ceilometer-api

Standalone web server hosting the API, the guts of which are WSME application in ceilometer/api/controllers/v2.py.

ceilometer-alarm-evaluator

TBD

ceilometer-alarm-notifier

Hear alarms and perform defined actions.

Next

Day two plan is to trace the flow of a piece of data across the code using a real event in my DevStack VM.