104 lines
2.9 KiB
Python
104 lines
2.9 KiB
Python
# -*- coding: utf-8 -*-
|
||
"""配置默认值"""
|
||
|
||
DEFAULTS = {
|
||
"app": {
|
||
"timezone": "Asia/Taipei",
|
||
"store_id": "",
|
||
"schema_oltp": "billiards",
|
||
"schema_etl": "etl_admin",
|
||
},
|
||
"db": {
|
||
"dsn": "",
|
||
"host": "",
|
||
"port": "",
|
||
"name": "",
|
||
"user": "",
|
||
"password": "",
|
||
"connect_timeout_sec": 5,
|
||
"batch_size": 1000,
|
||
"session": {
|
||
"timezone": "Asia/Taipei",
|
||
"statement_timeout_ms": 30000,
|
||
"lock_timeout_ms": 5000,
|
||
"idle_in_tx_timeout_ms": 600000
|
||
},
|
||
},
|
||
"api": {
|
||
"base_url": None,
|
||
"token": None,
|
||
"timeout_sec": 20,
|
||
"page_size": 200,
|
||
"retries": {
|
||
"max_attempts": 3,
|
||
"backoff_sec": [1, 2, 4],
|
||
},
|
||
"headers_extra": {},
|
||
},
|
||
"run": {
|
||
"tasks": [
|
||
"PRODUCTS", "TABLES", "MEMBERS", "ASSISTANTS", "PACKAGES_DEF",
|
||
"ORDERS", "PAYMENTS", "REFUNDS", "COUPON_USAGE", "INVENTORY_CHANGE",
|
||
"TOPUPS", "TABLE_DISCOUNT", "ASSISTANT_ABOLISH",
|
||
"LEDGER",
|
||
],
|
||
"window_minutes": {
|
||
"default_busy": 30,
|
||
"default_idle": 180,
|
||
},
|
||
"overlap_seconds": 120,
|
||
"idle_window": {
|
||
"start": "04:00",
|
||
"end": "16:00",
|
||
},
|
||
"allow_empty_result_advance": True,
|
||
},
|
||
"io": {
|
||
"export_root": r"D:\LLZQ\DB\export",
|
||
"log_root": r"D:\LLZQ\DB\logs",
|
||
"manifest_name": "manifest.json",
|
||
"ingest_report_name": "ingest_report.json",
|
||
"write_pretty_json": False,
|
||
"max_file_bytes": 50 * 1024 * 1024,
|
||
},
|
||
"clean": {
|
||
"log_unknown_fields": True,
|
||
"unknown_fields_limit": 50,
|
||
"hash_key": {
|
||
"algo": "sha1",
|
||
"salt": "",
|
||
},
|
||
"strict_numeric": True,
|
||
"round_money_scale": 2,
|
||
},
|
||
"security": {
|
||
"redact_in_logs": True,
|
||
"redact_keys": ["token", "password", "Authorization"],
|
||
"echo_token_in_logs": False,
|
||
},
|
||
"testing": {
|
||
# ONLINE: 正常实时ETL;OFFLINE: 读取归档JSON做T/L
|
||
"mode": "OFFLINE",
|
||
# 离线归档JSON所在目录
|
||
"json_archive_dir": "",
|
||
# 测试运行时用于生成/复制临时JSON的目录
|
||
"temp_json_dir": "",
|
||
},
|
||
}
|
||
|
||
# 任务代码常量
|
||
TASK_ORDERS = "ORDERS"
|
||
TASK_PAYMENTS = "PAYMENTS"
|
||
TASK_REFUNDS = "REFUNDS"
|
||
TASK_INVENTORY_CHANGE = "INVENTORY_CHANGE"
|
||
TASK_COUPON_USAGE = "COUPON_USAGE"
|
||
TASK_MEMBERS = "MEMBERS"
|
||
TASK_ASSISTANTS = "ASSISTANTS"
|
||
TASK_PRODUCTS = "PRODUCTS"
|
||
TASK_TABLES = "TABLES"
|
||
TASK_PACKAGES_DEF = "PACKAGES_DEF"
|
||
TASK_TOPUPS = "TOPUPS"
|
||
TASK_TABLE_DISCOUNT = "TABLE_DISCOUNT"
|
||
TASK_ASSISTANT_ABOLISH = "ASSISTANT_ABOLISH"
|
||
TASK_LEDGER = "LEDGER"
|