tasktiger-admin is an admin interface for TaskTiger using flask-admin. It comes with an overview page that shows the amount of tasks in each queue for each state (queued, active, scheduled, error). It lets you inspect queues and individual tasks, as well as delete and retry tasks that errored out.
(Interested in working on projects like this? Close is looking for great engineers to join our team)
% tasktiger-admin
This will listen on the default port (5000) and connect to the default Redis
instance. Additional settings are available (see --help
switch for
details).
For a more advanced integration, tasktiger-admin can be integrated in a Flask
app with an existing flask-admin by using the provided view in
tasktiger_admin.views.TaskTigerView
.
The TaskTigerView
class takes an optional integration_config
parameter
that can be used to render integration links on the admin Task Detail page.
These can be used to easily navigate to external resources like logging
infrastructure or a Wiki. integration_config
should be a list of tuples
that specify the integration name and URL template.
The URL template supports four variables:
task_id
: Current task idqueue
: Task queue nameexecution_start
: Execution start time minus a 10 second bufferexecution_failed
: Execution failed time plus a 10 second buffer
Example integration config that points to a logging website.
integration_config = [('Logs', 'https://logs.example.com/search/?'
'task_id={{ task_id }}&'
'start_time={{ execution_start }}&'
'end_time={{ execution_failed }}')]