From d795a9ec7df9ba6e29760e0f791af6341a99bf02 Mon Sep 17 00:00:00 2001 From: Denis Shatskiy Date: Fri, 11 Jul 2025 16:43:16 +0700 Subject: [PATCH] Add BGP_LOG_LEVEL environment variable support to ExaBGP configuration. Update Docker_RUN.md to document new log level option and modify start.sh to utilize the log level during ExaBGP startup. --- DOCKER_RUN.md | 2 ++ scripts/generate_config.py | 7 +------ scripts/start.sh | 5 +++-- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/DOCKER_RUN.md b/DOCKER_RUN.md index 3367922..d28a1f0 100644 --- a/DOCKER_RUN.md +++ b/DOCKER_RUN.md @@ -57,6 +57,7 @@ docker run -d ` -e BGP_NEIGHBOR_IP=10.0.0.1 ` -e BGP_NEIGHBOR_AS=65001 ` -e BGP_HOLD_TIME=180 ` + -e BGP_LOG_LEVEL=DEBUG ` -e BGP_MD5_PASSWORD="your-secure-password" ` git.shts.su/infra/bgp-server:latest ``` @@ -141,6 +142,7 @@ docker run -d ` | `BGP_HOLD_TIME` | Hold time в секундах | 90 | | `BGP_KEEPALIVE` | Keepalive в секундах | 30 | | `BGP_MD5_PASSWORD` | MD5 пароль для аутентификации | (не используется) | +| `BGP_LOG_LEVEL` | Уровень логирования (DEBUG, INFO, WARNING, ERROR) | INFO | ### Просмотр сгенерированной конфигурации diff --git a/scripts/generate_config.py b/scripts/generate_config.py index c627a94..48b6a78 100644 --- a/scripts/generate_config.py +++ b/scripts/generate_config.py @@ -21,6 +21,7 @@ def generate_exabgp_config(): hold_time = get_env_var('BGP_HOLD_TIME', '90') keepalive = get_env_var('BGP_KEEPALIVE', '30') md5_password = get_env_var('BGP_MD5_PASSWORD', '') + log_level = get_env_var('BGP_LOG_LEVEL', 'INFO') # Генерация конфигурации config = f"""# Автоматически сгенерированная конфигурация ExaBGP @@ -64,12 +65,6 @@ neighbor {neighbor_ip} {{ }} }} }} - -# Глобальные настройки логирования -log {{ - destination /app/logs/exabgp.log; - level INFO; -}} """ return config diff --git a/scripts/start.sh b/scripts/start.sh index 3c3d9cd..c747ae2 100644 --- a/scripts/start.sh +++ b/scripts/start.sh @@ -51,9 +51,10 @@ cat /app/exabgp.conf echo "---" exabgp --validate /app/exabgp.conf -# Запуск ExaBGP в фоновом режиме +# Запуск ExaBGP в фоновом режиме с логированием echo "Starting ExaBGP..." -exabgp /app/exabgp.conf & +LOG_LEVEL=${BGP_LOG_LEVEL:-INFO} +exabgp --log.level $LOG_LEVEL /app/exabgp.conf > /app/logs/exabgp.log 2>&1 & # Сохранение PID EXABGP_PID=$!