LIM configured no logging at all, so the instruction fetcher had no trail to follow. Adds a rotating file handler on the root logger plus two owner-only admin pages. - Admin > Logs: filter by level, source and text; tracebacks kept with their error; auto-refresh, raw download, rotated-file browsing and rotate-now - Admin > Logs > Brickset API calls: every outbound call recorded with method, params, caller, duration, result count and error, plus daily quota accounting (only getSets counts) and a comparison against getKeyUsageStats - New owner concept (services/ownership.py): a single account, distinct from is_admin, since these pages expose other admins activity. Defaults to the first admin; flask owner show/set to change - Services now log through module loggers; retention setting and pruning for call records - New CLI: flask owner show/set, flask logs path/prune - New table brickset_api_calls, created automatically at boot; LOG_* env vars, /data/logs in Docker
12 lines
489 B
Python
12 lines
489 B
Python
from app.models.user import User
|
|
from app.models.set import Set
|
|
from app.models.instruction import Instruction
|
|
from app.models.extra_file import ExtraFile
|
|
from app.models.set_share import SetShare
|
|
from app.models.site_setting import SiteSetting
|
|
from app.models.instruction_fetch import InstructionFetchJob
|
|
from app.models.api_call import BricksetApiCall
|
|
|
|
__all__ = ['User', 'Set', 'Instruction', 'ExtraFile', 'SetShare',
|
|
'SiteSetting', 'InstructionFetchJob', 'BricksetApiCall']
|