We're Hiring!

Mattermost, Inc.

Lots of "Invalid or missing user_ids in request body" errors in logs

Summary

Logs contain “Invalid or missing user_ids in request body” errors every few seconds.
No other known impact.

Steps to reproduce

5.29.0
Other required conditions are unknown.

Observed behavior

2020-12-20T12:01:30.606+1100 error mlog/log.go:229 Invalid or missing user_ids in request body. {"path": "/api/v4/users/status/ids", "request_id": "f7r8babrh7rbfp6c1do9h5g9ty", "ip_addr": "10.198.245.242", "user_id": "kk7hkdhc9pdr7j61shzhbkq7sa", "method": "POST", "err_where": "Context", "http_code": 400, "err_details": ""}
2020-12-20T12:01:37.807+1100 error mlog/log.go:229 Invalid or missing user_ids in request body. {"path": "/api/v4/users/status/ids", "request_id": "rf588kw4z7fypegf6jafjfem1e", "ip_addr": "10.198.245.242", "user_id": "kk7hkdhc9pdr7j61shzhbkq7sa", "method": "POST", "err_where": "Context", "http_code": 400, "err_details": ""}
2020-12-20T12:02:03.470+1100 error mlog/log.go:229 Invalid or missing user_ids in request body. {"path": "/api/v4/users/status/ids", "request_id": "nkke4duqttd9tfinip4gj6ioay", "ip_addr": "10.198.89.22", "user_id": "537zp9aoup8xdr3sri3e96q83o", "method": "POST", "err_where": "Context", "http_code": 400, "err_details": ""}

This seems to come from a range of IP addresses. I am not sure how to establish the cause, or clean this up.

Any ideas on how I can narrow these down? I have even more of them now. I am wondering if they are contributing to a general slow-down that users are complaining of.

Having spot-checked some examples, the user ID mentioned does exist in the users database and the user is active. So I guess Invalid or missing user_ids refers to the IDs in the request body that this client is asking for?

Hello, @gubbins I’m sorry to hear your having issues, I’m sure we’ll be able to figure it all out though!
Can I ask if you are running your Mattermost instance for an internal network and if you access your instance by opening to an IP address or to a domain name? I’ve just noticed that the logs seem to be coming from several internal IP addresses which are out of the ordinary for an application that is reverse proxied, as they shouldn’t be able to do that from my understanding of it.

Yes, it runs on an internal network behind a reverse proxy. Clients reach the server via its DNS name. Those IP addresses are just the client IPs of the incoming API connections surely?