Configuration of dtable-events¶
This is a cheat sheet for the dtable-events configuration file dtable-events.conf
. It contains all possible settings that can be configured as well as their default values.
The default values provided here are best-effort (not built automatically). They will be used, if no value is defined at all. It is not necessary the value, that is written in the configuration file on first startup.
In the default values below, a value in the form $XYZ
refers to an environment variable.
Configuration changes require a restart
New configuration options will only apply after a restart of SeaTable.
Notes about the configuration file format
The configuration file uses the INI format, which is a simple text-based format for storing configuration data. It consists of sections (denoted by square brackets, e.g., [general]) and key-value pairs.
Comments in the configuration file start with the hash symbol #
and extend to the end of the line.
When dealing with special characters like single quotes '
, double quotes "
or the hash symbol #
, it's generally best to enclose the value in double quotes.
dtable-events reads values from dtable_web_settings.py
Before SeaTable 5.3, dtable-events
reads dtable_web_settings.py
for internal URLs and various key settings. Ensure these configurations are correct.
Other configuration files are not used, if you run dtable-events separately.
Configurations in dtable-events.conf
Since SeaTable 5.3, by default, you can start the dtable-events service without adding any configurations to dtable-events.conf
, as the the key startup configurations (i.e. MySQL and Redis) are already configured in the environment variables by default (i.e., .env
). On the other hand, you can also add other dtable-events service related configurations to dtable-events.conf
, which mainly contains some sections and their options:
- Section names in
dtable-events.conf
compose of uppercase and spaces (such as[COMMON DATASET SYNCER]
). - Option names will be mainly lowercase with underscores (such as
per_update_auto_rule_workers
).
The following options are grouped by their sections.
Example configuration¶
By default, dtable-events.conf
will be empty after the first startup of SeaTable:
[CLEAN DB]
enabled = true
Available configuration options¶
[DATABASE]
¶
Database can configure in .env
From SeaTable 5.3, you can specify the database configurations in .env
. There is no need to keep this configuration in your dtable-events.conf
.
Parameter | Description | Default |
---|---|---|
type | The database connection type. Use mysql for MySQL and MariaDB (other databases are not yet supported) | mysql |
host | MariaDB server address | mariadb |
port | MariaDB server port | 3306 |
db_name | Database name | dtable_db |
username | MariaDB username | root |
password | MariaDB password | $DB_ROOT_PASSWD |
[REDIS]
¶
Redis can configure in .env
From SeaTable 5.3, you can specify the redis configurations in .env
. There is no need to keep this configuration in your dtable-events.conf
.
Parameter | Description | Default |
---|---|---|
host | Redis server address | redis |
port | Redis server port | 6379 |
password | Redis server password |
[CLEAN DB]
¶
enabled by default.
This setting controls whether SeaTable runs automated database cleanup tasks at 00:30 every day. Enabling this task ensures that your database stays lean and performs well. It also prevents the server from running out of disk space, since operation logs can take up quite a lot of space.
In addition, the retention periods for the different database tables can be customized. Setting any value to 0
or -1
causes the cleanup task to be skipped for the corresponding database table.
Parameter | Description | Default |
---|---|---|
enabled | Enables or disables the email notifications for base updates | true |
keep_dtable_snapshot_days | Retention period for snapshot entries in the database (in days) | 365 |
keep_activities_days | Retention period for activities (in days) | 30 |
keep_operation_log_days | Retention period for operation log entries (in days) | 14 |
keep_delete_operation_log_days | Retention period for delete operations in the operation log (in days) | 30 |
keep_dtable_db_op_log_days | Retention period for operation log entries inserted by dtable-db (in days) | 30 |
keep_notifications_usernotification_days | Retention period for user notifications (in days) | 30 |
keep_dtable_notifications_days | Retention period for base notifications (in days) | 30 |
keep_session_log_days | Retention period for session log entries (in days) | 30 |
keep_auto_rules_task_log_days | Retention period for automation rule logs (in days) | 30 |
keep_user_activity_statistics_days | Retention period for user activity statistics (in days) | 0 |
[EMAIL SENDER]
¶
enabled by default.
SeaTable runs this task every hour to send base email notifications for base updates to the users. It also generates the log file dtable_updates_sender.log
.
Parameter | Description | Default |
---|---|---|
enabled | Enables or disables the email notifications for base updates | true |
[AUTOMATION]
¶
enabled by default.
In SeaTable, users have the ability to define triggers and actions within an automation rule.
These rules are then automatically executed on a base.
Parameter | Description | Default |
---|---|---|
per_update_auto_rule_workers | Number of worker threads used for processing automation rule events | 3 |
[COMMON DATASET SYNCER]
¶
enabled by default.
SeaTable runs every hour this event to check for pending dataset syncs. The job processes datasets that need syncing based on their interval (per_day
, per_hour
) and validity.
Parameter | Description | Default |
---|---|---|
enabled | Enables or disables the common dataset syncer | true |
[EMAIL SYNCER]
¶
enabled by default.
SeaTable runs this event at the 30th minute of every hour. The job processes email sync tasks defined in a base by the user.
Parameter | Description | Default |
---|---|---|
enabled | Enables or disables the email syncer | true |
max_workers | Maximum number of worker threads for processing email sync tasks | 5 |
[LDAP SYNC]
¶
disabled by default.
SeaTable could sync LDAP accounts, if activated. This requires additional settings in dtable_web_settings.py
. Please refer to LDAP Authentication.
Parameter | Description | Default |
---|---|---|
enabled | Enables or disables the ldap sync | false |
sync_interval | Specifies the interval at which the LDAP synchronization process should run, in seconds | 3600 |
[VIRUS SCAN]
¶
disabled by default.
This section configures how files are scanned for viruses:
- Whether scanning is enabled (enabled)
- The command used to scan files (scan_command)
- Return codes indicating infected or clean files (virus_code, nonvirus_code)
- Limits on file size and extensions to skip (scan_size_limit, scan_skip_ext)
- Concurrency settings (threads)
Parameter | Description | Default |
---|---|---|
enabled | Enables or disables virus scanning | false |
scan_command | Command used for virus scanning (e.g., clamscan) | |
virus_code | Return codes indicating a file is infected (e.g. 0) | |
nonvirus_code | Return codes indicating a file is clean (e.g. 1) | |
scan_interval | The interval at which the virus scan runs (in minutes) | 60 |
scan_size_limit | Maximum file size to scan (in MB); larger files are skipped | 20 |
scan_skip_ext | File extensions to exclude from scanning | ['.bmp', '.gif', '.ico', '.png', '.jpg', '.mp3', '.mp4', '.wav', '.avi', '.rmvb', '.mkv'] |
threads | Number of threads for parallel scanning | 4 |
Deprecated or removed options¶
[DATABASE]
¶
[DATABASE] is not necessary anymore
Since version 5.3, dtable-events
reads database settings from environment variables.
The section [DATABASE]
contained options for accessing the MySQL database used by dtable-events
.
type
: Database connection type. Usemysql
for MySQL and MariaDB. Other databases are not yet supported.host
: Address of database. You must provide this option.port
: Port of database. Defaults to 3306.username
: Username for login to the database. You must provide this option.password
: Password for the database user. You must provide this option.db_name
: Database name used bydtable-events
. You must provide this option.
[REDIS]
¶
[REDIS] is not necessary anymore
Since version 5.3, dtable-events
reads Redis connection settings from environment variables.
The section [REDIS]
used to contain the following options:
host
: Redis server address. Defaults toredis
.port
: Redis server port. Defaults to6379
.password
: Redis server password (optional).
[AUTOMATION]
¶
per_minute_trigger_limit
: This setting allowed an administrator to restrict the frequency of automation rule executions. It has been removed in SeaTable 5.3.
[ROWS COUNTER]
¶
This section used to contain a single setting called enabled
that could be used to enable a periodic counter that counted the total number of rows of each team. The section has been removed in SeaTable 5.3.