|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
Если верить fuser , то PostgreSQL при запуске открывает лог-файл и держит его открытым на запись. Можно ли изменить эту политику, чтобы он открывал лог-файл только при записи ? Как это делает Redis . Текущая логика работы PostgreSQL приводит к тому, что из хост-машины невозможно очистить лог-файл, открытый на запись в гостевой машине: " файл занят другим процессом ". ( PostgreSQL работает в гостевой ОС, где общая папка (с логами) хост-машины примонтирована в качестве сетевой файловой системы). ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 16:21 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
Cyrax_02 Если верить fuser , то PostgreSQL при запуске открывает лог-файл и держит его открытым на запись. Можно ли изменить эту политику, чтобы он открывал лог-файл только при записи ? Как это делает Redis . Текущая логика работы PostgreSQL приводит к тому, что из хост-машины невозможно очистить лог-файл, открытый на запись в гостевой машине: " файл занят другим процессом ". ( PostgreSQL работает в гостевой ОС, где общая папка (с логами) хост-машины примонтирована в качестве сетевой файловой системы). интересно девки пляшут. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 16:27 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
mefman , всего знать невозможно (это ирония). ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 16:34 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
Cyrax_02, Вы имеете в виду WAL или лог сообщений сервера? Первый обязан быть открыт все время. Без вариантов. Второй никто не запрещает завернуть на syslog и там делать с ним все, что только душе угодно. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 16:50 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
ptr128Вы имеете в виду WAL или лог сообщений сервера? Лог сообщений сервера ptr128никто не запрещает завернуть на syslog и там делать с ним все, что только душе угодно. Так мне не нужно " всё, что угодно ". Нужно, чтобы лог PostgreSQL был в отдельном файле. И чтобы не находился всё время в открытом состоянии (как я написал выше, на хост-машине такой файл редактировать не удаётся). ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 17:17 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
Cyrax_02, вот и заверните его в syslog, а оттуда уже куда угодно. Хоть в файл на хост-машину, хоть в syslog хост-машины. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 17:49 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
авторCyrax_02, вот и заверните его в syslog, а оттуда уже куда угодно. Хоть в файл на хост-машину, хоть в syslog хост-машины. Вариант потребует изменения настроек на dev-сервере не только rsyslog, но и настроек всех "проблемных" сервисов (PostgreSQL, nginx и пр.), и создания дополнительных файлов в гостевой машине. В итоге окружение dev-сервера в плане логирования будет существенно отличаться от dep-сервера, что является нежелательным. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 18:16 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
Cyrax_02, Ваш выбор. Но для продуктива сбор всех логов через syslog - рекомендуемый путь. А уже куда дальше они уходят - одна строка настройки. Обычно, действительно, на rsyslog выделенного хоста, где уже анализируются и мониторятся. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 18:21 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
авторНо для продуктива сбор всех логов через syslog - рекомендуемый путь. Логи ошибок и логи доступа (например, в nginx ) могут представлять собой не один файл, а набор структурированных файлов (состав которых определяется настройками сервиса) и аккуратно складываемых в директорию /var/log/service . Если их перенаправить на syslog , эта структура будет потеряна... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 19:09 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
Cyrax_02 авторНо для продуктива сбор всех логов через syslog - рекомендуемый путь. Логи ошибок и логи доступа (например, в nginx ) могут представлять собой не один файл, а набор структурированных файлов (состав которых определяется настройками сервиса) и аккуратно складываемых в директорию /var/log/service . Если их перенаправить на syslog , эта структура будет потеряна... Короткий ответ НИ КАК и не делайте так. ps: на нормальных OS можно сделать truncate на файл открытый другими процессами (что позволяет logrotate файла через copy + truncate не спрашивая базу). Что еще можно посоветовать - ротировать лог раз в сутки средствами базы тогда и проблемы не будет так как очищать надо будет старые закрытые лог файлы а не текущий. -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 20:40 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
Maxim Bogukна нормальных OS можно сделать truncate на файл открытый другими процессами (что позволяет logrotate файла через copy + truncate не спрашивая базу). В гостевой ОС проблем с редактированием и очисткой таких файлов нет (WinSCP/SFTP плевал на блокировку). Проблема как раз в очистке лог-файлов из хост-машины. Вот там уже совсем не плевать: "файл занят другим процессом" . Maxim Boguk...ротировать лог раз в сутки средствами базы тогда и проблемы не будет так как очищать надо будет старые закрытые лог файлы а не текущий. Задача заключается в ручной очистке логов (по мере необходимости) из хост-машины. Через WinSCP неудобно - придётся держать его открытым. Да ещё по вкладке на каждый лог... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2020, 00:03 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
Cyrax_02, механизмы логов в postgresql рассчитаны на лог 10-100gb в сутки... при таких объемах переоткрывать лог файл 100 раз в секунду становится очень дорого. Тем более что то придумывать для лечения такой нетиповой проблемы/конфигурации как у вас. -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2020, 00:12 |
|
PostgreSQL держит лог-файл открытым на запись
|
|||
---|---|---|---|
#18+
Maxim Bogukмеханизмы логов в postgresql рассчитаны на лог 10-100gb в сутки... при таких объемах переоткрывать лог файл 100 раз в секунду становится очень дорого.Это на dep-сервере. А речь в сабже идёт про dev-сервер (процесс разработки/отладки). ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2020, 00:54 |
|
|
start [/forum/topic.php?fid=53&fpage=18&tid=1994302]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
others: | 297ms |
total: | 431ms |
0 / 0 |