Skip to content

Deployment and Maintenance / Administrator Tools

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

1. Administrator Tool admin-tool.py

DataFlux Func provides an administrator tool to facilitate some emergency maintenance tasks.

The administrator tool is included in the container and needs to be run using 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
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 [-f]'
    $ docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py disable_ip_address_filter [-f]'
    $ docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py clear_redis [-f]'

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

options:
  -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

Ordinary user passwords can be directly reset by the system administrator. However, if the system administrator forgets their own password, they need to use the administrator tool included with DataFlux Func to reset it.

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

1.2 Reset Database Upgrade Sequence Number

During installation/upgrade, DataFlux Func automatically updates the database structure and records the current database structure version sequence number.

In some cases, if this sequence number is incorrect, it may cause the system to fail to start normally. In such cases, the administrator tool needs to be used to correct it.

If you don't know what this is, please consult the official support before proceeding

The specific commands are 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 Disable IP Address Filtering

If you misconfigured the System Settings / IP Address Filtering, causing inability to access DataFlux Func.

You can use the following command to directly disable the IP address filtering function.

The specific commands are as follows:

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

1.4 Clear Redis

If you encounter situations such as queue blockage requiring immediate recovery, or unreasonable script logic causing excessively large cache, leading to inability to operate DataFlux Func.

You can use the following command to clear the Redis database.

Clearing Redis will not cause problems for DataFlux Func's own operation. However, running business code may depend on data in Redis. Please be absolutely certain before proceeding

The specific commands are 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.

The specific command is as follows:

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

DataFlux Func uses Redis database number 5 by default