Troubleshooting
In this page we have collected the most common problems our users run into, together with the way to solve them. If your problem is not listed here, or the suggestions do not help, please reach us at support@taskforce.sh or open an issue in our issues repository.
If you are running Taskforce.sh on your own infrastructure, also check the AWS troubleshooting page.
Connection problems
When Taskforce.sh cannot reach your Redis instance the connection status icon in the left side panel turns red. When creating or editing a direct connection you will also get an error message with a hint about what went wrong:
Host not found. The host name could not be resolved. Check for typos in the host, and make sure you entered only the host name, without any redis:// prefix or port number.
Connection timeout, invalid host or port? Taskforce.sh did not get any answer from the host. Usually this means that the port is wrong, or that a firewall is blocking the connection. If your Redis service only accepts connections from certain IPs, you need to allow the IP that Taskforce.sh connects from, see Securing by IP.
Connection refused, wrong port? The host was found but nothing is accepting connections on that port. Double check the port number given by your Redis provider.
Missing password or Invalid password. Your Redis instance requires a password and none was given, or the password is wrong. If your provider gives you a username as well (Redis ACL), make sure you are using the right combination.
Unknown error, tls disabled? This often happens when the Redis instance expects a TLS connection and TLS is not enabled in the connection, or the other way around. Many providers use a different port for TLS connections than for unencrypted ones, so check that the port and the TLS setting match.
My Redis instance is not reachable from the internet
Direct connections only work if Taskforce.sh can reach your Redis instance. If your instance is inside a private network (for example a VPC without public access) or runs on your own computer, use the Taskforce connector instead. The connector runs next to your Redis instance and connects out to Taskforce.sh, so you do not need to open any ports.
The connector does not show up in the dashboard
If the connector is running but the connection does not appear in the left side panel, check the following:
- The token passed with
-tmust be the API token found in the "Connection Token" tab of your account. - You need enough connections left in your plan for the new connection. The left side panel shows how many connections you are using.
- If you used
--team, the team must already exist in Taskforce.sh, and its name must match exactly. - The connector needs outgoing access to
api.taskforce.shover a secure websocket (port 443).
The connector prints its progress in the terminal, so the output usually tells you whether the problem is reaching Redis or reaching Taskforce.sh. For TLS, Redis Sentinel and Redis Cluster setups see the options in the connector repository.
Queues problems
A queue is missing in the connection
The list of queues is fetched when the connection is created, so queues created afterwards will not appear until you refresh the connection.
If the queue is still missing after refreshing:
- The queue must exist in Redis. A queue's keys are normally created when the first job is added, so a queue that never had any jobs may not be found.
- Check that the connection points to the right Redis database. If your application uses a database other than the default
0, the connection must use the same one. - On Redis instances with a very large number of keys the queue discovery can stop before finding all queues, as the connector gives up after 40 seconds. In this case you can tell the connector which queues to use with the
--queuesoption, as explained in Specifying queue names manually.
The workers list is empty or wrong
The Workers tab shows the workers that are connected to Redis right now. If it is empty while your workers are running, check that they are connected to the same Redis instance and database as the Taskforce.sh connection.
Due to an issue in Bull and BullMQ, the list can also be wrong if your workers reuse the same Redis connection for several queues.
Jobs disappear after they complete or fail
Taskforce.sh shows what is stored in Redis. If your jobs use removeOnComplete: true or removeOnFail: true, they are deleted from Redis as soon as they finish and will not be visible in the dashboard. You can also set either option to a number to retain that many finished jobs, for example removeOnFail: 1000, giving you something to inspect when things go wrong. The failed jobs monitor also needs at least one failed job to be kept in order to work.
Jobs are lost or Redis behaves strangely
Bull and BullMQ require the Redis setting maxmemory-policy to be noeviction. With any other policy Redis may delete keys when it runs low on memory, which can corrupt your queues. Check your provider's settings, and consider enabling the max memory monitor to get an alert before Redis runs out of memory.
Alerts and notifications
I am not getting any alerts
Monitors are disabled by default and must be enabled on every connection, see Monitoring. To receive alerts outside the dashboard, you also need to enable at least one notification channel for the connection in Enable notifications.
I got one alert and then nothing more
This is on purpose. Most monitors do not trigger a new alert for the same queue until the previous one has been acknowledged in the Alerts tab, or until a day has passed. This avoids getting flooded with alerts when many jobs fail at once. Acknowledge the alert once you have looked into it, and the monitor will start reporting again.