Skip to content

Deployment and Maintenance / Administrator Tools

This article mainly introduces how to maintain DataFlux Func using administrator tools.

1. Administrator Tool admin-tool.py

DataFlux Func provides an administrator tool for convenient emergency maintenance tasks.

The administrator tool is included in the container and needs to be run via Docker exec. You can use --help to view specific usage:

Bash
1
docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py --help'
Text Only
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
usage: admin-tool.py [-h] [-f] [--admin-username ADMIN_USERNAME]
                     [--admin-password ADMIN_PASSWORD]
                     <Command>

+--------------------------+
| DataFlux Func Admin Tool |
+--------------------------+
This tool should run in the Docker container:
    $ docker exec {DataFlux Func Container ID} sh -c 'exec python admin-tool.py --help'
    $ docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py reset_admin [-f] [--admin-username=<Admin Username>] [--admin-password=<Password>]'
    $ docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py reset_upgrade_db_seq'
    $ docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py clear_redis'
    $ docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py run_sql'

positional arguments:
  <Command>             reset_admin, reset_upgrade_db_seq, clear_redis,
                        run_sql

optional arguments:
  -h, --help            show this help message and exit
  -f, --force           Force run, no confirm
  --admin-username ADMIN_USERNAME
                        Admin Username
  --admin-password ADMIN_PASSWORD
                        Admin Password

1.1 Reset Administrator Password

Regular user passwords can be directly reset by the system administrator, but if the system administrator's password is forgotten, it must be reset using the administrator tool provided with DataFlux Func.

For more details, please refer to Deployment and Maintenance / Administrator Tools

1.2 Reset Database Upgrade Sequence

When installing/upgrading DataFlux Func, it automatically updates the database structure and records the current version of the database structure sequence.

In some cases, if this sequence number is incorrect, it may prevent the system from starting up properly. In such a case, you need to use the administrator tool to correct it.

If you do not know what this is, consult the official documentation before proceeding

Specific command as follows:

  • Outside the container
Bash
1
docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py reset_db_upgrade_seq'
  • Inside the container
Bash
1
cd /usr/src/app; python admin-tool.py reset_db_upgrade_seq

1.3 Clear Redis

In certain situations (such as when queues are blocked and immediate recovery is needed, or unreasonable script logic causes excessive caching), you can use the following command to clear the Redis database.

Clearing Redis will not cause issues with the operation of DataFlux Func itself. However, running business code may depend on data in Redis, so please confirm carefully before proceeding.

Specific command as follows:

  • Outside the container
Bash
1
docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py clear_redis'
  • Or inside the container
Bash
1
cd /usr/src/app; python admin-tool.py clear_redis

2. Directly Operate Redis

If you need to directly operate Redis, you can enter the Redis terminal to perform operations.

Specific command as follows:

Bash
1
docker exec -it {Redis Container ID} sh -c 'exec redis-cli -n 5'

DataFlux Func defaults to using Redis's database 5