Имя: Пароль:
1C
1С v8
Журнал регистрации "Ошибка формата потока"
, ,
0 Hunteraf
 
02.12.11
08:30
Доброе утро.
Сложилась такая ситуация, сократил журнал регистрации сохранив его в файл (без разделения по периодам), пробую теперь его открыть выдает "Ошибка формата потока". В инете пишут удалить символы 0x1a и 0xFFFF, только не знаю каким инструментом это сделать. Как восстановить журнал?
1 Hunteraf
 
02.12.11
08:58
Никто не сталкивался с такой проблемой?
2 Hunteraf
 
02.12.11
09:52
Народ, помогите плиз, срочно нужно что то сделать..
3 ДемонМаксвелла
 
02.12.11
12:46
Открыть можно word-ом, но это не поможет.
При помощи метода ВыгрузитьЖурналРегистрации преобразуй lgf в xml (если будет разбухать до бесконечности, поставь "максимальное количество"). Затем анализируй при помощи КонсольАнализаЖурналаРегистрации, есть в папке UNIREPS81\EventLogConsole, переделай под 8.2 сам.
4 Hunteraf
 
02.12.11
13:23
Попробовал сделать следующее
ВыгрузитьЖурналРегистрации("d:\222.xml", , ,"d:\111.lgf");
Пишет снова "Ошибка формата потока"
5 ДемонМаксвелла
 
02.12.11
13:27
поставь "максимальное количество" скажем 100
6 Hunteraf
 
02.12.11
13:31
тоже самое говорит, пробовал отдельные колонки выгружать, тоже ошибка вылетает
7 shuhard
 
02.12.11
13:33
(6) кэши почисть,
лог при этом не убей
8 Hunteraf
 
02.12.11
13:34
(7) что именно почистить?
9 ДемонМаксвелла
 
02.12.11
13:34
скорее всего в файле lgf то, чего платформа не ожидает увидеть. Исправить можно, главное понять что, и куда искать.
10 shuhard
 
02.12.11
13:34
(8) кэши
11 Hunteraf
 
02.12.11
13:35
Может попробовать найти недопустимые символы 0x1a и 0xFFFF только чем?
12 Hunteraf
 
02.12.11
13:38
(10)Кэш на клиенте?
13 shuhard
 
02.12.11
13:38
(12) там, где ты кнопку нажимаешь
14 ДемонМаксвелла
 
02.12.11
13:40
(11) это ты здесь вычитал (http://www.efrlab.ru/articles/post/5/)?  так там про другое
15 Hunteraf
 
02.12.11
13:44
(13)я пробовал открывать и сам журнал и обработку для конвертирования в xml в разных базах (в том числе и в пустой базе)
16 Hunteraf
 
02.12.11
13:45
может злополучная запись в самом начале файла, потому что ставлю "максимальное количество" 1, вылетает тоже с ошибкой
17 Kraft
 
02.12.11
13:55
(0) столкнулся с такой же траблой (после перехода на 8.2), пока не победили
18 ДемонМаксвелла
 
02.12.11
14:20
взял рабочий журнал регистрации, отрезал снизу произвольный (с учетом фигурных скобок) кусок, сохранил. В 1С открывается, удалилась часть записей. Так что исправить не проблема, проблема найти ошибку.
19 ДемонМаксвелла
 
02.12.11
14:20
прогой notepad ++
20 Hunteraf
 
02.12.11
14:26
Вот только где ее искать
21 ДемонМаксвелла
 
02.12.11
14:27
22 Hunteraf
 
02.12.11
14:31
Прогу я скачал уже, ошибку где искать непонятно)
23 ДемонМаксвелла
 
02.12.11
14:41
я и не говорил, что станет понятно :)
24 Hunteraf
 
02.12.11
14:42
Сравниваю записи в этом файле и норм журнале, вроде никаких особенных записей не нахожу
25 Hunteraf
 
02.12.11
15:25
Может я убрал галочку "Сохранить журнал по периодам"???
26 ДемонМаксвелла
 
02.12.11
16:17
в файле два раза встречается 1CV8LOG(ver 2.0) - в начале файла и в тексте. Всё что ниже первого 1CV8LOG(ver 2.0) но выше второго - похоже на таблицу соответствий, все что ниже второго 1CV8LOG(ver 2.0) - список событий вида {20110722091703,N,{0,0},1,1,1,1,2,I,"",0,{"U"},"",0,0,0,2,0}
на первом месте очевидно дата. Надо проверить синтаксис твоего файла.
27 Hunteraf
 
05.12.11
08:40
Вторая запись отсутствовала как оказалось 1CV8LOG(ver 2.0) отсутствовала. Добавил, журнал начал открываться, но почему то транзакции все незавершенные оказались, но это уже не так критично.
(ДемонМаксвелла) спасибо за помощь)))
28 ДемонМаксвелла
 
05.12.11
09:14
Обращайтесь :) В свое время чинил семерочный журнал регистрации, в котором была зашифрована часть записей. Сейчас вот научился чинить восьмёрочный, и с форматом разобрался. Это была интересная проблемка.
29 ДемонМаксвелла
 
05.12.11
09:19
Там кстати две строки повторяется, 1CV8LOG(ver 2.0) и ещё одна, которая ниже.
30 Hunteraf
 
05.12.11
09:45
Т.е. получается
1CV8LOG(ver 2.0)
1CV8LOG(ver 2.0)
.....
1CV8LOG(ver 2.0)
...

так должно быть?
31 Kraft
 
05.12.11
09:49
(28) ну коли разобрался, давай спеку
32 Hunteraf
 
05.12.11
09:49
Не понял сначала, про вторую строку
1CV8LOG(ver 2.0)
5e6103fa-2635-4d0e-9b50-8d92086685ea
Типа такого)))
33 Hunteraf
 
05.12.11
09:50
(31) что давать?
34 Kraft
 
05.12.11
09:51
(33) спецификацию формата
35 ДемонМаксвелла
 
05.12.11
09:56
(34) ну ещё не на 100% разобрался, чтоб свой просмотрщик сделать, но думаю основное понял. будет время - сделаю.
36 Hunteraf
 
05.12.11
09:56
Журнал должен быть примерно такого формата.Сначала идет
1CV8LOG(ver 2.0)
5e6103fa-2635-4d0e-9b50-8d92086685ea
Дальше идет что то типа
{4,"_$Transaction$_.Begin",2},
{4,"_$Data$_.Update",3},
{5,59fca0dc-c0bd-4d88-8101-d39c905deece,"Документ.ЗаданиеНаПроизводство",1}
тут нельзя конкретно описать что должно быть, дальше идет снова
1CV8LOG(ver 2.0)
5e6103fa-2635-4d0e-9b50-8d92086685ea
а потом начинаются основные описания типа
{20111102102853,U,
{241209bfdc600,1f758a6},48,52,1,812,3,I,"",50,
{"R",214:ae02001321f196af11e0fdf6a8b8eee8},"",1,1,1,1714,0}
37 Hunteraf
 
05.12.11
10:08
А на сколько должен вырасти файл при выгрузке в xml? у меня исходный весит 460 Мб.
38 Kraft
 
05.12.11
10:09
(36) у мну все так и есть, но почему-то все-равно выпадает с ошибкой формата потока
39 ДемонМаксвелла
 
05.12.11
10:10
(38) запятые
40 Kraft
 
05.12.11
10:12
Вот кусок из начала:

1CV8LOG(ver 2.0)
5ab10441-12d0-4751-9d0f-6e28df36af6b
{1,071523a4-516f-4fce-ba4b-0d11ab7a1893,"",1},
{2,"ADMIN",1},
{3,"Designer",1},
{4,"_$Session$_.Start",1},
{6,"APPSERVER",1},
{7,1564,1},
{8,1565,1},
{4,"_$Session$_.Finish",2},
{3,"1CV8",2},
{4,"_$Session$_.AuthenticationError",3},
{7,1562,2},
{8,1566,2},
{1,4dd365c0-bf54-44d8-8808-7ce9ab9b1ff3,"Admin",2},
{4,"_$Session$_.Authentication",4},
{2,"APPSERVER",2},
{8,1563,3},
{2,"SCLAD2",3},
{1,95addc55-1d8c-4143-9784-af5cf2f85ce5,"Us1",3},
{2,"SCLAD3",4},
{7,1566,3},
{8,1567,4},
{1,7de4c354-0e6e-44f4-a67c-1f70826b1c81,"Us2",4},
{2,"SCLAD",5},
{1,d357e094-c989-4f01-91b6-d7f2ed9ab743,"Us3",5},
{2,"ARM",6},
{1,cfce1a3a-9973-47f2-9775-fe82ab5d4659,"Us4",6},
{2,"FORMOVKA1",7},
{1,29363c1b-5c44-4555-b5b2-8dd85a77a23b,"Us5",7},
{4,"_$Transaction$_.Begin",5},
{4,"_$Transaction$_.Commit",6},
{4,"_$Data$_.Update",7},
{5,13ac38ee-8433-4795-b93f-ee12ab43e172,"РегистрСведений.ОбъектыДоступаДокументов",1},
{5,1026b308-1ff7-4da3-8908-dadde1c2e29b,"РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет",2},
{5,12c749de-c1d6-4d95-9db8-593695125549,"РегистрНакопления.ЗаказыПокупателей",3},
{5,15f8e940-e490-4706-959c-8e48f2d0daa9,"РегистрНакопления.УчетЗатрат",4},
...


есть ошибка?
41 ДемонМаксвелла
 
05.12.11
10:14
вроде нет.
42 Hunteraf
 
05.12.11
10:14
(40) мне кажется нет
43 Hunteraf
 
05.12.11
10:15
что насчет (37)
44 ДемонМаксвелла
 
05.12.11
10:15
ошибка может быть внизу файла, или в середине
45 ДемонМаксвелла
 
05.12.11
10:16
(43) не проверял, не знаю
46 Kraft
 
05.12.11
10:17
(41)(42) значит, скорее всего, ошибка закралась где-то дальше. И как анализировать текстовик в несколько сотен метров? Писать парсер? Тогда нужна спека. Иначе все это пустое...
В 1с сказали, что у них все гут и ниипет. В чем правда, брат?
47 ДемонМаксвелла
 
05.12.11
10:18
(46) нужно делать свою читалку/починялку
48 Kraft
 
05.12.11
10:20
(47) По-хорошему, тогда нужна спецификация. Можно конечно и без нее, но не то это, ох не то
49 Hunteraf
 
05.12.11
10:21
(46) У тебя после твоего кода дальше что идет?
50 Kraft
 
05.12.11
10:22
(49) после какого кода?
51 Hunteraf
 
05.12.11
10:23
(50) который ты прислал, дальше идут аналогичные операции, а после них что идет, короч нужен кусок с "1CV8LOG(ver 2.0)" и что до него и после
52 Kraft
 
05.12.11
10:26
(51) этот кусок тне одну тысячу строк тянеца
53 ДемонМаксвелла
 
05.12.11
10:33
(52) выведи текст около второго 1CV8LOG(ver 2.0), строк 5-10
54 Kraft
 
05.12.11
10:37
(53) его нет. Во всем файле тока один тег "1CV8LOG(ver 2.0)"
55 ДемонМаксвелла
 
05.12.11
10:39
(54) теперь читай 27 и 32
56 ДемонМаксвелла
 
05.12.11
10:45
насчет шапки - видимо она нужна для сжатия файла.
1 - пользователь,2 - имя компьютера,3 - тип приложения,4 - событие,5 - объект,6 - имя сервера,7 и 8 - порты (?)
каждому объекту присваивается номер, который будет встречаться в нижней части файла
57 Kraft
 
05.12.11
10:46
(55) один фиг выдает ошибку формата потока
58 ДемонМаксвелла
 
05.12.11
10:48
сделай (53)
59 Hunteraf
 
05.12.11
10:50
тысячу строк не нужно, нужно строк 5-7 до 1CV8LOG(ver 2.0) и 5-7 после
60 Hunteraf
 
05.12.11
10:53
тебе нужно чтобы получилось как в (36)
61 Kraft
 
05.12.11
10:59
В общем во всех файлах логов, встречается всего один тег "1CV8LOG(ver 2.0)" - в самом начале.
Добавил вручную этот же тег в конец - не помогло. Сейчас файл выглядет так:

1CV8LOG(ver 2.0)
5ab10441-12d0-4751-9d0f-6e28df36af6b
{1,071523a4-516f-4fce-ba4b-0d11ab7a1893,"",1},
{2,"ADMIN",1},
{3,"Designer",1},
{4,"_$Session$_.Start",1},
{6,"APPSERVER",1},
{7,1564,1},
{8,1565,1},
{4,"_$Session$_.Finish",2},
{3,"1CV8",2},
{4,"_$Session$_.AuthenticationError",3},
{7,1562,2},
{8,1566,2},
{1,4dd365c0-bf54-44d8-8808-7ce9ab9b1ff3,"Admin",2},
{4,"_$Session$_.Authentication",4},
{2,"APPSERVER",2},
{8,1563,3},
{2,"SCLAD2",3},
{1,95addc55-1d8c-4143-9784-af5cf2f85ce5,"Us1",3},
{2,"SCLAD3",4},
{7,1566,3},
{8,1567,4},
{1,7de4c354-0e6e-44f4-a67c-1f70826b1c81,"Us2",4},
{2,"SCLAD",5},
{1,d357e094-c989-4f01-91b6-d7f2ed9ab743,"Us3",5},
{2,"ARM",6},
{1,cfce1a3a-9973-47f2-9775-fe82ab5d4659,"Us4",6},
{2,"FORMOVKA1",7},
{1,29363c1b-5c44-4555-b5b2-8dd85a77a23b,"Us5",7},
{4,"_$Transaction$_.Begin",5},
{4,"_$Transaction$_.Commit",6},
{4,"_$Data$_.Update",7},
{5,13ac38ee-8433-4795-b93f-ee12ab43e172,"РегистрСведений.ОбъектыДоступаДокументов",1},
{5,1026b308-1ff7-4da3-8908-dadde1c2e29b,"РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет",2},
{5,12c749de-c1d6-4d95-9db8-593695125549,"РегистрНакопления.ЗаказыПокупателей",3},
{5,15f8e940-e490-4706-959c-8e48f2d0daa9,"РегистрНакопления.УчетЗатрат",4},
...
{20111117233342,N,
{0,0},1,0,6,9,14,I,"",93,
{"S",""},"",1,2,5,2058,0},
{20111117233342,N,
{0,0},1,0,6,0,2,I,"",0,
{"U"},"",0,0,0,2058,0}
1CV8LOG(ver 2.0)
62 ДемонМаксвелла
 
05.12.11
11:05
(61) две строки
1CV8LOG(ver 2.0)
5e6103fa-2635-4d0e-9b50-8d92086685ea
должны быть ПЕРЕД списком событий
63 Hunteraf
 
05.12.11
11:10
(61) не в конец нада, а в середину и 2 строки
1CV8LOG(ver 2.0)
5ab10441-12d0-4751-9d0f-6e28df36af6b
{1,071523a4-516f-4fce-ba4b-0d11ab7a1893,"",1},
{2,"ADMIN",1},
{3,"Designer",1},
{4,"_$Session$_.Start",1},
{6,"APPSERVER",1},
{7,1564,1},
{8,1565,1},
{4,"_$Session$_.Finish",2},
{3,"1CV8",2},
{4,"_$Session$_.AuthenticationError",3},
{7,1562,2},
{8,1566,2},
{1,4dd365c0-bf54-44d8-8808-7ce9ab9b1ff3,"Admin",2},
{4,"_$Session$_.Authentication",4},
{2,"APPSERVER",2},
{8,1563,3},
{2,"SCLAD2",3},
{1,95addc55-1d8c-4143-9784-af5cf2f85ce5,"Us1",3},
{2,"SCLAD3",4},
{7,1566,3},
{8,1567,4},
{1,7de4c354-0e6e-44f4-a67c-1f70826b1c81,"Us2",4},
{2,"SCLAD",5},
{1,d357e094-c989-4f01-91b6-d7f2ed9ab743,"Us3",5},
{2,"ARM",6},
{1,cfce1a3a-9973-47f2-9775-fe82ab5d4659,"Us4",6},
{2,"FORMOVKA1",7},
{1,29363c1b-5c44-4555-b5b2-8dd85a77a23b,"Us5",7},
{4,"_$Transaction$_.Begin",5},
{4,"_$Transaction$_.Commit",6},
{4,"_$Data$_.Update",7},
{5,13ac38ee-8433-4795-b93f-ee12ab43e172,"РегистрСведений.ОбъектыДоступаДокументов",1},
{5,1026b308-1ff7-4da3-8908-dadde1c2e29b,"РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет",2},
{5,12c749de-c1d6-4d95-9db8-593695125549,"РегистрНакопления.ЗаказыПокупателей",3},
{5,15f8e940-e490-4706-959c-8e48f2d0daa9,"РегистрНакопления.УчетЗатрат",4},
...
1CV8LOG(ver 2.0)
5ab10441-12d0-4751-9d0f-6e28df36af6b
{20111117233342,N,
{0,0},1,0,6,9,14,I,"",93,
{"S",""},"",1,2,5,2058,0},
{20111117233342,N,
{0,0},1,0,6,0,2,I,"",0,
{"U"},"",0,0,0,2058,0}
64 Kraft
 
05.12.11
11:11
Как узнать место в которое нужно воткнуть тег?
65 Hunteraf
 
05.12.11
11:14
{20111117233342,N,
{0,0},1,0,6,9,14,I,"",93,
{"S",""},"",1,2,5,2058,0},
{20111117233342,N,
{0,0},1,0,6,0,2,I,"",0,
{"U"},"",0,0,0,2058,0}

Примерно с такой фигни начинается список событий, перед ним и нужно вставить 2 твоих строки.
66 ДемонМаксвелла
 
05.12.11
11:18
Список событий по внешнему виду сильно отличается от шапки, место, где заканчивается шапка и начинаются события легко найти при прокрутке в notepad ++
67 Kraft
 
05.12.11
11:27
(66) какой парсер выставляешь для подсветки?
68 Kraft
 
05.12.11
11:29
у мну в файле лога получается куча переходов, а-ля (65).
69 ДемонМаксвелла
 
05.12.11
11:31
Kraft, не обижайся, но думаю ты тормозишь. перечитай ветку ещё раз.
70 Kraft
 
05.12.11
11:32
(69) да, торможу, ибо не спавши совсем (
71 Kraft
 
05.12.11
11:32
+(70) перечитаю завтра
72 ДемонМаксвелла
 
05.12.11
11:34
В самом событии 18 полей через запятую. Думаю здесь будут все 16 колонок журнала регистрации: картинка, дата-время, пользователь, компьютер, приложение, сеанс, рабочий сервер, основной IP порт, вспомогательный IP порт, событие, комментарий, статус транзакции, транзакция, метаданные, данные, представление данных и ещё пара колонок. Найти соответствие можно, нужно время.
73 Hunteraf
 
05.12.11
12:08
Интересно почему получается такой файл при сокращении журнала, получается это платформа так себя ведет?
74 Kraft
 
05.12.11
12:17
(73) ну а кто же еще )
75 Hunteraf
 
05.12.11
12:19
самое интересное что такой ошибки я не встретил в заявленных.
76 Hunteraf
 
05.12.11
12:22
(75) неправду сказал
Есть такое
10081714  Чтение файла журнала регистрации
Проблема:
При попытке открыть файл журнала регистрации, полученный при сокращении журнала регистрации, происходит ошибка формата потока.
Дата публикации: 2011-06-02
77 ДемонМаксвелла
 
05.12.11
12:59
(76) да, это та ошибка, но уже при сокращении данные записались в неправильном формате.
78 Hunteraf
 
05.12.11
13:23
В последнем релизе ошибка не исправлена, сколько теперь битых журналов может быть, а начальство это мало волновать будет если нужна будет история изменений.
Ошибка? Это не ошибка, это системная функция.