Server query does not allow queries

Hi!

I’m currently working on a project that uses https query to get clientlist, channellist and banlist from the server with valid api key. Backend calls https query with fetch and parses the requests and caches them, it also provides REST api for frontend (so clients cannot directly use api key to do whatever they want with https query). Frontend provides visitors server channel tree and show where currently online users are, when are they afk etc.

Ts6 server query ports are behind firewall and cannot be accessed from anywhere else than “local network” (not really, just bit complicated proxy) where backend server is also located.

Most of the times it works flawlessly, I’ve whitelisted the backend server’s ip address so it would not get blacklisted and timeouted. But I think it does not work or query server does not function very well. Sometimes https query (10443) just shuts down and does not allow any queries from any IP and there are no logs regarding this issue.

When I try to change log-commands to 1 on tsserver.yaml it just logs successful queries from the IP that I’ve whitelisted and it might work for couple of hours or it may just stop working after 10 minutes of queries. When https query stops working, ssh query also shuts down. I’ve increased max query buffer-mb amount to its maximum 100.

I’ve attached example logs from today and after last query server stopped responding without any clue. Voip side works flawlessly even when query does not work. Couple of times query has regained its strenght and started to work by itself but most of the times only fix I’ve found is restart.

Logs
2025-09-15 10:55:03.289674|INFO    |Query         |1  |query from  2 10.0.0.8:38786 issued: clientlist
2025-09-15 11:08:59.017259|INFO    |Query         |1  |query from  2 10.0.0.8:39032 issued: channellist
2025-09-15 11:09:08.584972|INFO    |Query         |1  |query from  2 10.0.0.8:54602 issued: clientlist
2025-09-15 11:10:59.829243|INFO    |Query         |1  |query from  2 10.0.0.8:47034 issued: channellist
2025-09-15 11:18:04.440657|INFO    |Query         |1  |query from  2 10.0.0.8:60062 issued: channellist
2025-09-15 11:18:07.065213|INFO    |Query         |1  |query from  2 10.0.0.8:60078 issued: clientlist
2025-09-15 11:20:20.600084|INFO    |Query         |1  |query from  2 10.0.0.8:57118 issued: channellist
2025-09-15 11:41:49.183577|INFO    |Query         |1  |query from  2 10.0.0.8:58670 issued: clientlist
2025-09-15 11:42:10.176202|INFO    |Query         |1  |query from  2 10.0.0.8:42778 issued: channellist
2025-09-15 11:58:23.548873|INFO    |Query         |1  |query from  2 10.0.0.8:32904 issued: channellist
Whitelist
127.0.0.1
::1
...
10.0.0.0/24
10.0.0.8
curl and ssh query request

Most of the times curl works, but when query is down it either gives an error that the server cannot process the request or just times out after many minutes.

image

And here is when it does not work :confused:

image

Here is ssh query log before and after restarting the server.

I kinda don’t know what else I can try to do… According to my server’s netstat port is listening but https query with curl does not even work from the same local machine.

Server version is v6.0.0-beta6 on Linux and it is using remote mariadb as storage. I use self-signed certs for the query, but it really cannot be the issue, because it works until it doesn’t. It cannot be the firewall because firewall rules allow local network data transfers and issue fixes with teamspeak container restart.

How long does it take for this issue to arise?

Are you running it in a Docker container or native on your system?

2 Likes

I run server on docker container and issue arises usually within first 12 hours, but if query usage is “high” eg. during developement without caching it may appear faster; sometimes under 30 minutes after starting the server.

Try adding the IP 0.0.0.0/0 to the query allowlist.

Due to Docker using a different IP/network, it might be possible that the source IP can also change.

2 Likes

Hi!

That did not fix the issue; server still gets overwhelmed and stops working with https query but this time ssh query still accepts connections.

I did test issue with another freshly built server with nearly identical specs (with and without docker), but unfortunatelly I cannot replicate issue there so issue lies somewhere within my original server… :upside_down_face:

I think I may have found workaround for my project to counter the issue and I think I can live with this. If I can find way to replicate this issue I’ll update you but for now you can close this thread.

1 Like

Hi,

I started experimenting with the WebQuery interface and also ran into this issue. My server also runs within a docker container. It sometimes takes only a few queries, sometimes a few minutes, and the server no longer responds to query requests. I have to restart the server to get it back to work for a few more queries, but that’s of course no sustainable solution.

I tried the whitelist fix, but that didn’t change anything. There’s also nothing in the logs. Once it’s broken I get those responses:

$ curl -H 'x-api-key: apikeygoeshere' 'http://myserver:10080/1/channellist?-topic&-icon'
curl: (52) Empty reply from server

$ curl -H 'x-api-key: apikeygoeshere' 'http://127.0.0.1:10080/1/clientlist'
curl: (56) Recv failure: Connection reset by peer

If there’s anything we can do to debug this, let me know.