postgresql ошибка pgbadger - не удается загрузить несовместимые двоичные данные, двоичный файл из версии <4.0 - PullRequest
0 голосов
/ 20 июня 2020

Я пытаюсь использовать pgbadger для создания отчета html для файлов журнала postgres медленных запросов. Мои файлы журнала postgres находятся в формате csvlog в папке pg_log. Я переношу все файлы журналов (80 файлов по 10 МБ каждый) на свой локальный компьютер windows и пытаюсь создать один отчет html для всех файлов. Я создал весь один файл из всех файлов следующим образом:

type postgresql-2020-06-18_075333.csv > postgresql.csv
type postgresql-2020-06-18_080011.csv >> postgresql.csv
....
....
type postgresql-2020-06-18_094812.csv >> postgresql.csv

Я загрузил «pgbadger-11.2» и попробовал команду ниже, но получил ошибку.

D:\pgbadger-11.2>perl --version
This is perl 5, version 28, subversion 1 (v5.28.1) built for MSWin32-x64-multi-thread

D:\pgbadger-11.2>perl pgbadger "D:\June-Logs\postgresql.csv" -o postgresql.html
[========================>] Parsed 923009530 bytes of 923009530 (100.00%), queries: 1254764, events: 53
can not load incompatible binary data, binary file is from version < 4.0.
LOG: Ok, generating html report...

postgresql. html создается, но нет данных ни на одной вкладке, но он работает, когда я создаю отдельный отчет для отдельного csv. как показано ниже.

D:\pgbadger-11.2>perl pgbadger "D:\June-Logs\postgresql-2020-06-18_075333.csv" -o postgresql-2020-06-18_075333.html
D:\pgbadger-11.2>perl pgbadger "D:\June-Logs\postgresql-2020-06-18_080011.csv" -o postgresql-2020-06-18_080011.html
...
D:\pgbadger-11.2>perl pgbadger "D:\June-Logs\postgresql-2020-06-18_094812.csv" -o postgresql-2020-06-18_094812.html

Пожалуйста, предложите мне что-нибудь, чтобы исправить эту проблему.

1 Ответ

0 голосов
/ 20 июня 2020

Я собираюсь сказать это из-за:

type postgresql-2020-06-18_075333.csv > postgresql.csv
type postgresql-2020-06-18_080011.csv >> postgresql.csv

Совершенно уверен, что вводятся Windows окончания строк, а pgBadger ищет Unix окончания строк. Можете ли вы выполнить конкатенацию на сервере?

ОБНОВЛЕНИЕ. Хм. Пробежал через этот

https://github.com/darold/pgbadger/releases

"Этот новый выпуск нарушает обратную совместимость со старыми двоичными или JSON файлами. Это также означает, что инкрементный режим не будет работать для чтения старого двоичного файла [...] Добавить предупреждение о версии и пропустить загрузку несовместимого двоичного файла.

  • Обновить программу форматирования кода до pgFormatter 4.0. "

Не уверен почему он не работает в журналах CSV, но какая версия pgBadger создает журналы?

...