mirror of
https://github.com/zulip/zulip.git
synced 2025-11-07 07:23:22 +00:00
settings: Define logging paths with, like, normal human variables.
This makes these variables available for type-checking. Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
This commit is contained in:
committed by
Tim Abbott
parent
cafac83676
commit
6fe5e44b35
@@ -174,8 +174,8 @@ messages).
|
|||||||
|
|
||||||
### State and logs files
|
### State and logs files
|
||||||
|
|
||||||
When writing out state of log files, always declare the path in
|
When writing out state of log files, always declare the path with
|
||||||
`ZULIP_PATHS` in `zproject/settings.py`, which will do the right thing
|
`zulip_path` in `zproject/settings.py`, which will do the right thing
|
||||||
in both development and production.
|
in both development and production.
|
||||||
|
|
||||||
## JS array/object manipulation
|
## JS array/object manipulation
|
||||||
|
|||||||
@@ -240,7 +240,7 @@ def log_to_file(logger: Logger,
|
|||||||
filename: str,
|
filename: str,
|
||||||
log_format: str="%(asctime)s %(levelname)-8s %(message)s",
|
log_format: str="%(asctime)s %(levelname)-8s %(message)s",
|
||||||
) -> None:
|
) -> None:
|
||||||
"""Note: `filename` should be declared in zproject/settings.py in ZULIP_PATHS."""
|
"""Note: `filename` should be declared in zproject/settings.py with zulip_path."""
|
||||||
formatter = logging.Formatter(log_format)
|
formatter = logging.Formatter(log_format)
|
||||||
handler = logging.FileHandler(filename)
|
handler = logging.FileHandler(filename)
|
||||||
handler.setFormatter(formatter)
|
handler.setFormatter(formatter)
|
||||||
|
|||||||
@@ -1027,45 +1027,42 @@ TEMPLATES = [
|
|||||||
# LOGGING SETTINGS
|
# LOGGING SETTINGS
|
||||||
########################################################################
|
########################################################################
|
||||||
|
|
||||||
ZULIP_PATHS = [
|
def zulip_path(path: str) -> str:
|
||||||
("SERVER_LOG_PATH", "/var/log/zulip/server.log"),
|
|
||||||
("ERROR_FILE_LOG_PATH", "/var/log/zulip/errors.log"),
|
|
||||||
("MANAGEMENT_LOG_PATH", "/var/log/zulip/manage.log"),
|
|
||||||
("WORKER_LOG_PATH", "/var/log/zulip/workers.log"),
|
|
||||||
("JSON_PERSISTENT_QUEUE_FILENAME_PATTERN", "/home/zulip/tornado/event_queues%s.json"),
|
|
||||||
("EMAIL_LOG_PATH", "/var/log/zulip/send_email.log"),
|
|
||||||
("EMAIL_MIRROR_LOG_PATH", "/var/log/zulip/email_mirror.log"),
|
|
||||||
("EMAIL_DELIVERER_LOG_PATH", "/var/log/zulip/email-deliverer.log"),
|
|
||||||
("EMAIL_CONTENT_LOG_PATH", "/var/log/zulip/email_content.log"),
|
|
||||||
("LDAP_SYNC_LOG_PATH", "/var/log/zulip/sync_ldap_user_data.log"),
|
|
||||||
("QUEUE_ERROR_DIR", "/var/log/zulip/queue_error"),
|
|
||||||
("DIGEST_LOG_PATH", "/var/log/zulip/digest.log"),
|
|
||||||
("ANALYTICS_LOG_PATH", "/var/log/zulip/analytics.log"),
|
|
||||||
("ANALYTICS_LOCK_DIR", "/home/zulip/deployments/analytics-lock-dir"),
|
|
||||||
("API_KEY_ONLY_WEBHOOK_LOG_PATH", "/var/log/zulip/webhooks_errors.log"),
|
|
||||||
("WEBHOOK_UNEXPECTED_EVENTS_LOG_PATH", "/var/log/zulip/webhooks_unexpected_events.log"),
|
|
||||||
("SOFT_DEACTIVATION_LOG_PATH", "/var/log/zulip/soft_deactivation.log"),
|
|
||||||
("TRACEMALLOC_DUMP_DIR", "/var/log/zulip/tracemalloc"),
|
|
||||||
("SCHEDULED_MESSAGE_DELIVERER_LOG_PATH",
|
|
||||||
"/var/log/zulip/scheduled_message_deliverer.log"),
|
|
||||||
("RETENTION_LOG_PATH", "/var/log/zulip/message_retention.log"),
|
|
||||||
]
|
|
||||||
|
|
||||||
# The Event log basically logs most significant database changes,
|
|
||||||
# which can be useful for debugging.
|
|
||||||
if EVENT_LOGS_ENABLED:
|
|
||||||
ZULIP_PATHS.append(("EVENT_LOG_DIR", "/home/zulip/logs/event_log"))
|
|
||||||
else:
|
|
||||||
EVENT_LOG_DIR = None
|
|
||||||
|
|
||||||
for (var, path) in ZULIP_PATHS:
|
|
||||||
if DEVELOPMENT:
|
if DEVELOPMENT:
|
||||||
# if DEVELOPMENT, store these files in the Zulip checkout
|
# if DEVELOPMENT, store these files in the Zulip checkout
|
||||||
if path.startswith("/var/log"):
|
if path.startswith("/var/log"):
|
||||||
path = os.path.join(DEVELOPMENT_LOG_DIRECTORY, os.path.basename(path))
|
path = os.path.join(DEVELOPMENT_LOG_DIRECTORY, os.path.basename(path))
|
||||||
else:
|
else:
|
||||||
path = os.path.join(os.path.join(DEPLOY_ROOT, 'var'), os.path.basename(path))
|
path = os.path.join(os.path.join(DEPLOY_ROOT, 'var'), os.path.basename(path))
|
||||||
vars()[var] = path
|
return path
|
||||||
|
|
||||||
|
SERVER_LOG_PATH = zulip_path("/var/log/zulip/server.log")
|
||||||
|
ERROR_FILE_LOG_PATH = zulip_path("/var/log/zulip/errors.log")
|
||||||
|
MANAGEMENT_LOG_PATH = zulip_path("/var/log/zulip/manage.log")
|
||||||
|
WORKER_LOG_PATH = zulip_path("/var/log/zulip/workers.log")
|
||||||
|
JSON_PERSISTENT_QUEUE_FILENAME_PATTERN = zulip_path("/home/zulip/tornado/event_queues%s.json")
|
||||||
|
EMAIL_LOG_PATH = zulip_path("/var/log/zulip/send_email.log")
|
||||||
|
EMAIL_MIRROR_LOG_PATH = zulip_path("/var/log/zulip/email_mirror.log")
|
||||||
|
EMAIL_DELIVERER_LOG_PATH = zulip_path("/var/log/zulip/email-deliverer.log")
|
||||||
|
EMAIL_CONTENT_LOG_PATH = zulip_path("/var/log/zulip/email_content.log")
|
||||||
|
LDAP_SYNC_LOG_PATH = zulip_path("/var/log/zulip/sync_ldap_user_data.log")
|
||||||
|
QUEUE_ERROR_DIR = zulip_path("/var/log/zulip/queue_error")
|
||||||
|
DIGEST_LOG_PATH = zulip_path("/var/log/zulip/digest.log")
|
||||||
|
ANALYTICS_LOG_PATH = zulip_path("/var/log/zulip/analytics.log")
|
||||||
|
ANALYTICS_LOCK_DIR = zulip_path("/home/zulip/deployments/analytics-lock-dir")
|
||||||
|
API_KEY_ONLY_WEBHOOK_LOG_PATH = zulip_path("/var/log/zulip/webhooks_errors.log")
|
||||||
|
WEBHOOK_UNEXPECTED_EVENTS_LOG_PATH = zulip_path("/var/log/zulip/webhooks_unexpected_events.log")
|
||||||
|
SOFT_DEACTIVATION_LOG_PATH = zulip_path("/var/log/zulip/soft_deactivation.log")
|
||||||
|
TRACEMALLOC_DUMP_DIR = zulip_path("/var/log/zulip/tracemalloc")
|
||||||
|
SCHEDULED_MESSAGE_DELIVERER_LOG_PATH = zulip_path("/var/log/zulip/scheduled_message_deliverer.log")
|
||||||
|
RETENTION_LOG_PATH = zulip_path("/var/log/zulip/message_retention.log")
|
||||||
|
|
||||||
|
# The Event log basically logs most significant database changes,
|
||||||
|
# which can be useful for debugging.
|
||||||
|
if EVENT_LOGS_ENABLED:
|
||||||
|
EVENT_LOG_DIR = zulip_path("/home/zulip/logs/event_log") # type: Optional[str]
|
||||||
|
else:
|
||||||
|
EVENT_LOG_DIR = None
|
||||||
|
|
||||||
ZULIP_WORKER_TEST_FILE = '/tmp/zulip-worker-test-file'
|
ZULIP_WORKER_TEST_FILE = '/tmp/zulip-worker-test-file'
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user