On 20/11/15 11:33 AM, Alexis Lee wrote:
gord chung said on Thu, Nov 19, 2015 at 11:59:33PM -0500:
just to clarify, the idea doesn't involve tailoring the notification
payload to ceilometer, just that if a producer is producing a
notification it knows contains a useful datapoint, the producer
should tell someone explicitly 'this datapoint exists'.
I know very little about Nova notifications or Ceilometer, so stepping
wildly into the unknown here but... why would a producer spit out
non-useful datapoints? If no-one cares or will ever care, it simply
shouldn't be included.
fully agree.

it seems like even before addressing versioning, that the notification paradigm itself should be discussed. right now the producer is just sending out a grab bag of data that it thinks is important but doesn't define who the audience is. while that makes it extremely flexible so that anyone can consume the message, it also guarantees nothing (not even that it's being consumed). you can version a payload or make a schema accessible as much as you like but if no one is listening or the data published isn't useful to those listening, it's just noise.

i think a lot of the complexity we have in versioning is that the projects are too silo'd. i think some of the versioning issues would be irrelevant if the producer knew it's consumers before sending rather than producers just tossing out a chunk of data (versioned schema or not) and considering their job complete once it leaves it's own walls. the producer doesn't necessarily have to be the individual project teams but whoever the producer of notifications is, it should know it's audience.


The problem is knowing what each consumer thinks is interesting and that
isn't something that can be handled by the producer. If Ceilometer is
just a pipeline that has no opinion on what's relevant and what isn't,
that's a special case easily implemented by an identity function.
the notification consumption service in ceilometer is essentially just a pipeline that normalises select incoming notifications into a data model(s) and pushes that model to whoever wants it (a known consumer is the storage service but it's configurable to allow other consumers).

cheers,

--
gord


__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to