Murat ÖZDEMİR d51c073556 fix(health-agent): fix uk_tokens.yml load race and LogRecord msg conflict
- config.py: Replace exists()+open() with try/except open() to avoid TOCTOU race on SSHFS mounts where stat can succeed but open can fail with FileNotFoundError.
- uptime_kuma.py: Rename msg key to push_msg in logger extra dicts. Python LogRecord reserves the msg field; passing it in extra raises ValueError which was being silently swallowed by the except block, masking successful pushes as errors.
2026-06-26 20:37:42 +03:00

26 lines
858 B
Python

import os
import yaml
from pathlib import Path
from dotenv import load_dotenv
load_dotenv()
ENV = os.getenv("ENV", "prod")
CLUSTER_SIZE_ETCD = int(os.getenv("CLUSTER_SIZE_ETCD", "3"))
CLUSTER_SIZE_PATRONI = int(os.getenv("CLUSTER_SIZE_PATRONI", "3"))
CLUSTER_SIZE_MONGODB = int(os.getenv("CLUSTER_SIZE_MONGODB", "3"))
CLUSTER_SIZE_RABBITMQ = int(os.getenv("CLUSTER_SIZE_RABBITMQ", "3"))
CLUSTER_SIZE_VAULT = int(os.getenv("CLUSTER_SIZE_VAULT", "3"))
REDIS_MODE = os.getenv("REDIS_MODE", "sentinel")
EXTERNAL_DOMAIN = os.getenv("EXTERNAL_DOMAIN", "iklim.co")
EXTERNAL_SUBDOMAIN_SUFFIX = os.getenv("EXTERNAL_SUBDOMAIN_SUFFIX", "")
def load_uk_tokens():
try:
with open("config/generated/uk_tokens.yml", "r") as f:
return yaml.safe_load(f) or {}
except (FileNotFoundError, OSError):
return {}
UK_TOKENS = load_uk_tokens()