Логотип: не долбить VK/лог при отказе загрузки фото (кэшируем неудачу)

В логах на каждое приветствие сыпалось [15] Access denied (у токена нет прав на
фото). Теперь неудача загрузки кэшируется — приветствие уходит без логотипа, без
повторных ошибок. (Чтобы логотип показывался — токену нужно право «Фотографии».)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Kenik
2026-08-06 21:50:53 +03:00
parent f9cdaec75a
commit 577d342bdd
+4 -1
View File
@@ -1427,7 +1427,10 @@ class VKBotApplication:
logger.info(f"Фото загружено в VK: {result['attachment']}")
return result
except Exception as e:
logger.error(f"Ошибка загрузки фото {image_path} в VK: {e}")
# Кэшируем неудачу, чтобы не долбить VK и лог на каждое приветствие
# (напр. у токена нет прав на фото — [15] Access denied).
self._photo_cache[image_path] = None
logger.warning(f"Фото {os.path.basename(image_path)} не загружено (шлём без него): {e}")
return None