yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #66585
[Bug 1708167] Re: placement services logs 405 response as untrapped error
Reviewed: https://review.openstack.org/490021
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=7a895c67b1c2be1a4be17203c06f023aaf371546
Submitter: Jenkins
Branch: master
commit 7a895c67b1c2be1a4be17203c06f023aaf371546
Author: Chris Dent <cdent@xxxxxxxxxxxxx>
Date: Wed Aug 2 14:19:34 2017 +0100
[placement] Avoid error log on 405 response
Treat HTTPMethodNotAllowed as a WSGI application rather than exception
so that it is not treated as an uncaught exception and logged as an ERROR
in the PlacementHandler before being caught in the FaultWrapper middleware.
Bad method detection is happening outside the context of WebOb wsgify
handling (which automatically catches Webob exceptions and transforms
them into appropriate responses) so we need to do the transformation
ourself.
This will help to avoid spurious noise in the logs. See the bug report
for more detail.
Change-Id: I6de7c2bffb08f370fcfbd86070c94263ee202f93
Closes-Bug: #1708167
** Changed in: nova
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1708167
Title:
placement services logs 405 response as untrapped error
Status in OpenStack Compute (nova):
Fix Released
Bug description:
When the placement service gets a bad method for an existing URL it
raises an HTTPMethodNotAllowed exception. It does this outside of the
WebOb wsgify context, meaning the the exception is caught the the
FautlWrapper middleware and perceived to be an uncaught exception and
logged as such, muddying the log files with something that is normal.
We don't see this log messaages in CI because we don't accidentally
cause 405s. Where we intentionally cause them (in gabbi tests) the log
message is recorded in the subunit data but not in the test output
because the tests pass (passing tests do not display those
messages).[1]
The fix is to treat the HTTPMethodNotAllowed as a wsgi app instead of
an exception and call it. When doing that, things work as desired. Fix
forthcoming.
[1] I discovered this because the subunit files on https://review.openstack.org/362766 were cresting the 50M limit, because in that change the api sample tests were passing but having all kinds of errors with the placement fixture (I've since fixed the patch) generating vast amounts of log messagse on successful tests. Digging in there also revealed the error message that this bug wants to deal with.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1708167/+subscriptions
References