I am wondering if this is a bug or intended behavior on Kong side. I find REST API calls that use xml and not json on request to be a little old school, but I don’t think Kong should for every single xml based request throw an error log like so which floods our stdout logs and makes finding real nginx TCP/backend errors via simple scrolling impossible at the moment(not to mention I was told once before that doing ngx_log() constantly yields a performance hit):
2018/09/13 00:23:59 [error] 35#0: *7605051 [lua] public.lua:139: get_body_info(): don't know how to parse request body (can't decode Content-Type 'text/xml; charset=utf-8'), client: 10.xxx.x.x, server: kong, request: "POST /api/some/path/service/v1 HTTP/1.1", host: "apigateway.company.com"
Does this seem like proper practice, is there anything Kong can do as to not flood logs for every xml based tx? I can make a github issue if you believe it to be a bug but I wanted to ask here first.
(I don’t think this plays a roll in the error but including anyways)
Plugins existing directly on this route/service:
Varient of the HTTP Logger
Rate Limiting set to local 500 tps
Kong upstream JWT: https://github.com/Optum/kong-upstream-jwt
We run Kong 0.14.1 w Cassandra Datastore.
Maybe just change it from ERR to DEBUG or something else??