Перейти к основному содержимому
Версия: 7.0

S3 хранилище для лог-файлов

Общие сведения

Логи фоновых задач по умолчанию сохраняются локально в ./files/logs/tasks/. Для использования S3-совместимого хранилища настройте параметры в конфигурационном файле.

Необходимо в отказоустойчивых конфигурациях

В отказоустойчивых средах фоновые задачи запускаются на каждой ноде с серверов приложений: на одной ноде выполняется N-количество задач, на другой — своё количество. На вкладке Фоновые задачи в интерфейсе доступны только логи с текущей ноды. Чтобы просмотреть логи задач, выполнявшихся на другой ноде, потребуется подключаться к ней напрямую. При хранении лог-файлов в S3 все записи доступны из единого хранилища, и просмотр возможен из интерфейса без переключения между нодами.

Конфигурационный файл

Параметры S3 задаются в файле .env.local (в Docker сборке — .env), который расположен в следующих директориях в зависимости от установки Пассворка:

  • Linux/var/www/.env.local
  • Windows ServerC:\inetpub\wwwroot\passwork\.env.local
  • Docker/<passwork>/.env
к сведению

Если файл отсутствует, его необходимо создать.

Параметры

ПараметрОписание
APP_FILES_SOURCEИсточник хранения: files.storage.local (по умолчанию) или files.storage.aws (S3).
S3_REGIONРегион бакета.
S3_BUCKETИмя бакета.
S3_STORAGE_PREFIXПрефикс пути внутри бакета (например, passwork-logs).
S3_STORAGE_KEYAccess Key для S3.
S3_STORAGE_SECRETSecret Key для S3.
S3_ENDPOINTEndpoint хранилища. Для AWS S3 не указывается.
S3_USE_PATH_STYLE_ENDPOINTPath-style адресация: 0 — virtual-hosted style, 1 — path style (для MinIO — 1).

Логи сохраняются по пути — {S3_STORAGE_PREFIX}logs/tasks/YYYY/MM/DD/task-{taskId}.log

Примеры

AWS S3

APP_FILES_SOURCE=files.storage.aws
S3_REGION=us-east-1
S3_BUCKET=pwk
S3_STORAGE_PREFIX=passwork-logs
S3_STORAGE_KEY=AKIAIOSFODNN7EXAMPLE
S3_STORAGE_SECRET=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
S3_USE_PATH_STYLE_ENDPOINT=0

MinIO

APP_FILES_SOURCE=files.storage.aws
S3_REGION=us-east-1
S3_BUCKET=pwk
S3_STORAGE_PREFIX=passwork-logs
S3_ENDPOINT=https://minio.example.com
S3_USE_PATH_STYLE_ENDPOINT=1
S3_STORAGE_KEY=webapp-logs
S3_STORAGE_SECRET=1GV6qaFpMYR11zs0VDEy

Yandex Cloud

APP_FILES_SOURCE=files.storage.aws
S3_REGION=ru-central1
S3_BUCKET=pwk
S3_STORAGE_PREFIX=passwork-logs
S3_ENDPOINT=https://storage.yandexcloud.net
S3_USE_PATH_STYLE_ENDPOINT=0
S3_STORAGE_KEY=YCAJEpJM_HfJaBrOYrdxpWG-n
S3_STORAGE_SECRET=YCMCZ0O2Rf2h3UET8ucqkXICmRyMNdVDBN5YSDvJ

Selectel

APP_FILES_SOURCE=files.storage.aws
S3_REGION=ru-3
S3_BUCKET=pwk
S3_STORAGE_PREFIX=passwork-logs
S3_ENDPOINT=https://s3.ru-3.storage.selcloud.ru
S3_USE_PATH_STYLE_ENDPOINT=0
S3_STORAGE_KEY=9734841e98904e24aecbaf3426e275cb
S3_STORAGE_SECRET=c8952ff63c8d4bb4847f6dc226bf2fbf

Timeweb Cloud

APP_FILES_SOURCE=files.storage.aws
S3_REGION=ru-1
S3_BUCKET=cde1da86-598e-4740-9619-9b2b6238377f
S3_STORAGE_PREFIX=passwork-logs
S3_ENDPOINT=https://s3.twcstorage.ru
S3_USE_PATH_STYLE_ENDPOINT=0
S3_STORAGE_KEY=EQ2P52Y5GAWM81MACLFB
S3_STORAGE_SECRET=MGv7vbQaVCDs0Fmgt1TL8yrjAxvhAOawcYb82Khq

VK Cloud

APP_FILES_SOURCE=files.storage.aws
S3_REGION=ru-msk
S3_BUCKET=pwk
S3_STORAGE_PREFIX=passwork-logs
S3_ENDPOINT=https://hb.ru-msk.vkcloud-storage.ru
S3_USE_PATH_STYLE_ENDPOINT=0
S3_STORAGE_KEY=i9f18Z5F1rcdLAh6VCRupg
S3_STORAGE_SECRET=7AXhW1vEkgg7ZAJ9kbtNHGnEtjcjW65iezYo5KxhvUbT

После изменения параметров необходимо перезапустить службу PHP-FPM или Docker контейнер:

systemctl restart php8.3-fpm