hibiken / asynqmon

Web UI for Asynq task queue
MIT License
605 stars 132 forks source link

500 (Internal Server Error): Redis cluster on Azure Redis enterprise returns 500 when calling queues endpoint #327

Open dinson opened 1 month ago

dinson commented 1 month ago

I tried connecting asynqmon with Azure Redis enterprise cluster. Calling the queues endpoint results in 500 Internal Server Error with the following API response:

Request curl --location 'http://127.0.0.1:8080/monitoring/api/queues'

API Response UNKNOWN: redis eval error: ERR Error running script (call to f_0c80fc1868e3aae205155ae2017ce995a3a7cec0): @user_script:19: @user_script: 19: This Redis command is not allowed from scripts

Additional Info Cluster: Enabled TLS: Enabled Redis Go Client version: v9 Azure Redis Cluster version: 6.0.17

PS: The same code works when connecting to Azure Redis cache without cluster enabled (with TLS).

dinson commented 1 month ago

Digging in revealed that this line is triggering the error in asynqmon code:

Line github.com/hibiken/asynq/internal/rdb/inspect.go #L340

res, err := memoryUsageCmd.Run(context.Background(), r.client, keys, argv...).Result()