0. Антон Ширяев 472 09.04.13 15:00 Сейчас в теме

Формат файлов журнала регистрации 1С 8.1/8.2 - ELF/LOG/LGF/LGP

В статье детально описан формат текстовых файлов журнала регистрации 1С 8.1 - ELF/LOG и 1С 8.2 - LGF/LGP

Перейти к публикации

Вознаграждение за ответ
Показать полностью
Комментарии
Избранное Подписка Сортировка: Древо
1. frc 10.04.13 10:18 Сейчас в теме
Вау, какие темы пошли!
Отлично!
2. EarlyBird 6 10.04.13 10:21 Сейчас в теме
3. jONES1979 10.04.13 11:17 Сейчас в теме
"Это ж все что нажито непосильным трудом" - теперь разжевано и разобрано! :D
Плюсую. Обработку тоже скачал, пригодится
4. higs 10.04.13 11:53 Сейчас в теме
И мне понравилось. Хотя пока не знаю, куда применить данные знания. Переводить разработки с 7-ки по парсингу журнала и отборов данных?
5. Антон Ширяев 472 10.04.13 13:45 Сейчас в теме
(4) higs,
Я как раз начал с обратного - сначала обработка с уже возможным некоторым применением, а затем уж описал формат по тому что получилось в обработке.

А применение знаний формата пока основное вижу только одно - если есть понимание формата, то можно лечить некоторые виды повреждений журнала регистрации 1С 8.

Так же на Инфостарте уже есть несколько разработок, которые что-то делают с журналом регистрации, возможно им пригодится перевод на прямое чтение файлов.
6. frc 11.04.13 00:50 Сейчас в теме
(5)
если есть понимание формата, то можно лечить некоторые виды повреждений журнала регистрации 1С 8.

тогда ждем через неделю обработку "Как и где лечить поврежедния журнала".
С сопроводительной статьей "Повреждения журнала и причины этого".
Можно еще приложение - "Виды повреждений на примерах". ;)
8. Антон Ширяев 472 11.04.13 12:37 Сейчас в теме
(6) frc,
тогда ждем через неделю обработку "Как и где лечить поврежедния журнала".
С сопроводительной статьей "Повреждения журнала и причины этого".
Можно еще приложение - "Виды повреждений на примерах". ;)


Чтобы что-то лечить, нужно видеть больного. Что-то желающих делиться проблемными журналами пока нет, а в своих архивах пока не наткнулся на проблемы.

Часто возникает проблема "Недостаточно памяти" при чтение журнала, так тут и лечить собственно нечего, нужно прочистить журнал от ненужных событий (планируется в будущих версиях обработки) или переходить на хранение копий журнала для анализа в сторонней базе.
7. Il 16 11.04.13 10:55 Сейчас в теме
9. Sergoninfostarru 2 11.04.13 23:25 Сейчас в теме
Поставил "+" за детальность и объем проделанной работы.
А какой смысл считывать 1С-ом данные из журнала регистрации 1С ?
Я как-то могу понять, когда данные считываются внешним приложением, отличным от 1С.
В 1С есть свое представление журнала регистрации с возможностью отбора. Где можна
использовать полученные знания на практике ?
10. Unicorn31 45 12.04.13 08:42 Сейчас в теме
Журнал регистрации можно использовать для анализа изменений в базе, и выгрузки этих данных в другую ис за определенный промежуток. Это альтернатива плану обмена, но более универсальная. Плюсанул за труды.
Sergoninfostarru; +1 Ответить
11. Антон Ширяев 472 15.04.13 16:08 Сейчас в теме
Выяснил еще пару подробностей про журнал регистрации 1С 8.2
1) Разбивать запись на дополнительный строки необязательно, т.е. файл будет вполне читаться платформой через Файл - Открыть даже если не соблюдать правила по поводу фигурных скобок и связанных с ними переводов строк
2) Пока по моим наблюдениям в последнем элементе записей файла данных всегда содержится "{0}". Возможно это маркер окончания записи.

Просьба к тем, кто обнаружит обратное сообщить об этом здесь.
12. DAnry 6 24.04.13 18:20 Сейчас в теме
13. LexSeIch 205 26.04.13 18:02 Сейчас в теме
Мир этому дому!
В очередной раз убеждаюсь, что в сообществе много людей, которые разобравшись в вопросе или проблеме, готовы поделиться своими результатами. Спасибо за ценную информацию.
14. Антон Ширяев 472 05.02.14 15:42 Сейчас в теме
После долгих попыток понять почему при делении файлов журнала регистрации транзакции помечаются как незавершенные пришел к выводу, что умозаключение
"3) Транзакция в формате записи из двух элементов преобразованных в шестнадцатеричное число – первый – число секунд с 01.01.0001 00:00:00 умноженное на 10000, второй – номер транзакции"
оказалось неверным. Второй параметр это не номер транзакции, а смещение в файле данных журнала регистрации по которому начинается первая запись по этой транзакции.
danila_inf; +1 Ответить
24. sai_NT 07.04.16 19:31 Сейчас в теме
(14) благодарю за наводку: помогла инфа касательно смещения. Переписал свою обработку, основанную во многой на вашей, по перекодировке файла журнала данных и теперь транзакции с правильными статусами отображаются.
15. Diversus 2036 18.02.14 21:08 Сейчас в теме
(0) Плюс Вам, конечно, за работу, но статья больше носит характер "академической".
Типовой журнал это неудобная вещь, медленная и не информативная.
Я пошел другим путем и не стал опираться на типовой журнал а сделал свою подсистему
16. Silenser 511 30.09.14 14:01 Сейчас в теме
Так случилось, что был утерян файл словаря. Решил схитрить и подсунуть 1С файл словаря от той же базы, но с выгрузкой за другую дату. Оказалось, что файл словаря был создан заново и порядок идентификаторов в нем другой, не то что по метаданным, но даже по событиям. <сарказм> Удивительно! </сарказм>
Сейчас думаю, что делать. Больше всего похоже на то, что восстановить словарь без непотребных трудозатрат не выйдет.
17. dima_gsv 9 30.10.14 17:03 Сейчас в теме
Не подскажите, почему в 8.2 в журнал регистрации не записываются блокировки по таймауту и взаимоблокировки, возникающие при записи / проведении документов. В 8.1 вроде бы они туда попадали. А в 8.2 сообщение пользователю выводится, но в журнал не записывается. "Попыток" нет.
18. Никулин Леонид 4 16.11.14 17:50 Сейчас в теме
Использовал. Работает. Спасибо!
19. DoctorRoza 05.12.14 09:41 Сейчас в теме
Отмечусь, нужно детально изучить! :)
20. bashirov.rs 24 14.01.15 13:44 Сейчас в теме
Спасибо. Информативно. У меня вопрос следующего характера - можете по подробнее описать что означают или в каких ситуациях возникают все из перечисленных статусов транзакции?
21. CaSH_2004 355 10.06.15 15:52 Сейчас в теме
Объясните а зачем нужен файл описаний если есть файл данных? Вроде вся информация находится в нем
22. CaSH_2004 355 11.06.15 01:20 Сейчас в теме
И кстати журналы в базах в которых пользователи сидят не читаются, думаю нужно было сделать чтение через VBScript - там вроде заблокированные на запись файлы читаются
23. Prometeus2011 90 05.07.15 14:59 Сейчас в теме
Не заметил информации относительно того, как выбрать журнал регистрации нужной базы. В директории "C:\Program Files\1cv8\srvinfo\reg_1541" лежит куча ГУИДОВ и файл "1CV8Clst.lst". Вот в нем-то и хранятся сопоставления.
25. ufedor 52 09.09.16 12:30 Сейчас в теме
id метаданных, скорее всего, это номер таблицы, который можно получить с помощью функции ПолучитьСтруктуруХраненияБазыДанных
26. Euroset1 10 28.02.17 18:35 Сейчас в теме
Так же встречаются пока неопознанные коды 11, 12 и 13

Я сейчас работаю над переводом старой версии журнала на Sqlite (конвертация файлов) и вроде как докопался до 11,12 и 13 кодов. Они имеют чуть иную логику, нежели предыдущие. И их суть сводится к таблице ComputerToUserCodes на sqlite. А именно, связи компьютеров и пользователей, которые с них заходили. Причем 13й может идти несколько раз подряд. Вместо значения и индекса тут связь индекс-индекс.

Похоже, что 11й добавляется после пользователя и означает начало блока связки этого пользователя с компьютером. 12й после добавления компьютера и символизирует начало связки с пользователем. А 13е - это непосредственно сами данные, как "связать".
27. Euroset1 10 28.02.17 23:44 Сейчас в теме
13й не происходит при выполнении фонового задания. То есть 13й массив заполняется лишь связями клиентских пользователей и машин
Также есть подозрения, что 11й и 12й не влияют а 13й. Похоже, они задумывались, как вспомогательные массивы под пользователей и машины. Но на практике у них всегда заполнен {0} в качестве значения. С точки зрения анализа и переноса в новый формат, это бессмысленная информация. Рудимент и не более.
28. VipDim 20.04.17 09:29 Сейчас в теме
Тоже очень (просто жизненно) интересно что означает {"P",{6,{"S","Строка1"},{"S","Строка2"}}}
Столкнулся с проблемой обращения к журналу регистрации через SQLite. Приходится расшифровывать все эти данные для вывода в табличную часть и последующего отбора. Для указанной комбинации перепробовал все возможные типы. Ничего не подошло.
Может кто разобрался что это за данные?
29. shoy 19 29.08.19 13:02 Сейчас в теме
А что для нового формата что либо есть?
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Санкт-Петербург
зарплата от 80 000 руб. до 130 000 руб.
Полный день

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Программист/Cтарший программист 1С
Москва
зарплата от 100 000 руб. до 250 000 руб.
Полный день

Программист 1С
Калининград
зарплата от 60 000 руб. до 80 000 руб.
Полный день

Руководитель проектов 1С
Санкт-Петербург
Полный день