dtable_server_config.json

配置项
自 SeaTable 5.3 起这部分配置将优先从环境变量(.env)中获取:
  • 数据库部分(host, port, user, password, database)
  • Redis 部分(redis_host, redis_port, redis_password)
  • private_key (对应于 .env 中 JWT_PRIVATE_KEY)
            
                
                
{
     "host": "db",
     "user": "root",
     "password": "MYSQL_PASSWORD",
     "database": "dtable_db",
     "port": 3306,
     "private_key": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
     "dtable_web_service_url": "https://example.seatable.com/",
     "redis_host": "redis",
     "redis_port": 6379,
     "redis_password": "",
     "enable_notification_publish": true/false,
     "api_req_max": 3000,
     "rows_api_minute_max": 100,
     "rows_api_hour_max": 6000,
     "save_interval": 300000
     "api_base_day_max": 5000,
     "rows_api_max_limit": 1000,
     "list_rows_form_dtable_db_limit": 5000
}
redis_password 是一个空字符串。
private_key
必须与 dtable_web_settings.py 中的 DTABLE_PRIVATE_KEY 相同。
dtable_web_service_url
用于 dtable-server 访问 dtable-web。 如果未指定,将使用 127.0.0.1:8000。
enable_notification_publish
用于开启/关闭发布通知到 redis 的 “notification-added” 频道中,默认false,即关闭。这个是用于和第三方系统对接,让第三方系统能实时的收到通知。具体通知内容格式详见下文。
rows_api_minute_max/ rows_api_hour_max
调用 rows API 的每分钟和每小时的次数限制。默认是 100 和 6000。对大的表格,列出频繁的列出 rows 的开销比较大。
api_req_max/ api_base_day_max
  • api_req_max: 每个 Base 每分钟最大的 API 调用次数,默认 600
  • api_base_day_max: 每个 Base 每天最大的 API 调用次数,默认 5000
save_interval
表格自动保存周期,默认为 5 分钟
rows_api_max_limit
调用 list rows API 返回的最大行数, 默认为1000
性能相关配置项
list_rows_form_dtable_db_limit
默认为 5000。超过这个大小的 base 的 list rows API 请求转发到 dtable-db 处理。
注意
您需要重新启动SeaTable,以便更改生效。
            
                
                
docker exec -d seatable /shared/seatable/scripts/seatable.sh restart
发布到 redis 的消息格式
            
                
                
{
     "id": 1, # 消息 ID
     "username": "0027d98c471a4ee69eaf073508fc0d27@auth.local", # 消息接受者的 username
     "dtable_uuid": "718ba16bf2314440a0fa431dd6e45612",
     "created_at": "2021-07-20T09:52:21.378Z",
     "msg_type": "" # selected_collaborator, notification_rules, row_comment 其中一个,
     "detail": "" # 消息细节,是一个json字符串,详见下文
}
被指定为协作人 (selected_collaborator) detail
            
                
                
{
     "author": "dc2056fbd4884e77b0ed895d0681572d@auth.local", # 操作人的 username
     "row_id": "a161qHUFTfCLK2FsWr_n0A", # 评论行 ID
     "table_id": "0000" # 子表 ID
}
通知规则消息(notification_rules) detail
            
                
                
{
     "table_id": "0000", # 子表 ID
     "view_id": "0000", # 视图 ID
     "condition": "filters_satisfy", # 触发条件
     "rule_id": 41, # 规则 ID
     "rule_name": "rule name", # 规则名称
     "msg": "a notification message", # 消息内容
     "row_id_list": ["IgLXf7KWRTCAmIXnT2KSPg"] # 触发规则的行 ID
}
行评论 (row_comment) detail
            
                
                
{
     "author": "0027d98c471a4ee69eaf073508fc0d27@auth.local", # 发起评论人的 username
     "table_id": "0000", # 子表 ID
     "row_id": "IgLXf7KWRTCAmIXnT2KSPg", # 评论行 ID
     "comment": "this is a test comment" # 评论内容
}