[openstack-dev] [nova] logging wsgi requests exactly once ... issues with request usefulness
Sean Dague
sean at dague.net
Mon Feb 10 22:11:28 UTC 2014
On 02/10/2014 05:05 PM, Christopher Yeoh wrote:
> On Mon, Feb 10, 2014 at 2:56 PM, Sean Dague <sean at dague.net
> <mailto:sean at dague.net>> wrote:
>
> In upstream Nova master we're currently logging ec2 wsgi requests twice,
> once in the paste pipeline, and once in eventlet.
>
> The following patch removes the paste pipeline portion -
> https://review.openstack.org/#/c/67736/
>
> However... I'm not very satisfied with this approach, as the resulting
> log entries look as follows (lots more examples at -
> http://logs.openstack.org/36/67736/7/check/check-tempest-dsvm-full/9b0eb3e/logs/screen-n-api.txt.gz?level=INFO)
>
> ... "POST /services/Cloud/ HTTP/1.1" status: 200 len: 2099 time:
> 0.8823061
> ... "POST /services/Cloud/ HTTP/1.1" status: 200 len: 449 time:
> 0.1196980
> ... "POST /services/Cloud/ HTTP/1.1" status: 200 len: 2095 time:
> 0.4743402
> ... "POST /services/Cloud/ HTTP/1.1" status: 400 len: 360 time:
> 0.5385840
> ... "POST /services/Cloud/ HTTP/1.1" status: 200 len: 449 time:
> 0.1317410
>
> Because the eventlet logger is only logging the requestline (which is
> the URL), Post requests are basically completely information free.
>
> We have an equally opaque problem in the Nova API with server actions:
>
> ... "POST
> /v2/85979842c31049fab70bcdd399cb9a3f/servers/4d5c5ba0-a975-4f4b-863a-390ad58e1c48/action
> HTTP/1.1" status: 202 len: 185 time: 1.1360781
>
> Because these aren't really RESTful interfaces, so the url is not useful
> enough to determine the action.
>
> My feeling is that we need to make the wsgi request logs useful enough
> to know what was actually called on an API call, which means I'm not
> convinced we can actually use the eventlet logger for Nova, because our
> URLs aren't actually RESTful.
>
> I'm slightly surprised that in v3 we do the same thing. Could we at
> minimum change .... action urls to action/ACTIONNAME, or would that
> completely not work with our router?
>
>
> Yea this is a wsgi "thing". I guess we'll need to log action POSTs twice
> to get enough useful info in the logs.
No, I get that our urls are POST .../action. :)
What I'm saying is that isn't a RESTful url. The API end point should be
POST .../action/BLAH, and that's what attached to the controller. It
seems like given that we haven't yet released the v3 API this is maybe
changable.
In REST the goal is the URL + Method (GET / PUT / POST / DELETE) is
sufficient to determine the action being taken. For our "/action" API
endpoints this is very far from the case.
-Sean
--
Sean Dague
Samsung Research America
sean at dague.net / sean.dague at samsung.com
http://dague.net
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 482 bytes
Desc: OpenPGP digital signature
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140210/dea20751/attachment.pgp>
More information about the OpenStack-dev
mailing list