Расследование причин краха клиента 1С

Публикация № 1044582

Администрирование - Системное

Технологический Журнал ТЖ ПадениеКлиента1с

18
Как понять, почему клиент 1С вдруг завершается аварийно.

На некоторых рабочих станциях пользователей периодически происходило падение клиента 1С. Совершенно произвольно в разное время с разным контекстом.

Попытки на тестовой среде повторить выполняемые действия не приводили к результату. Тогда мы подключили ТЖ на клиентский компьютер. Подключается аналогично серверному.

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
  <log location="D:\logs" history="24">
    <event>
      <eq property="Name" value="EXCP"/>
    </event>
   <event>
      <eq property="Name" value="EXCPCNTX"/>
    </event>
      <property name="all">
    </property>
  </log>
</config>

При следующем падении нам потребовалось знать только время события, всю детализацию показал ТЖ. В нашем случае это оказалась рекурсия и переполнение стека.

07:15.863000-0,EXCP,2,process=1cv8c,OSThread=3592,DumpError=Created dump file: ,Context='
ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();
	ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();
		ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();
			ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();
				ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();
					ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();
						ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();
							ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();
								ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();
									ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();
										ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();
											ВнешняяОбработка.РабочийСтолТМЦ.Форма.АРМСотрудникаТМЦНовый.Форма : 812 : ЧтениеСобытийТелефонии();

И еще много много раз ...

Зная контекст проблемы, исправить ее не составило труда.

18

См. также

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. PerlAmutor 35 16.04.19 18:48 Сейчас в теме
Многие и не знают, что ТЖ может раздельно существовать не только на одном сервере, но и на клиентах и на вспомогательных кластерах. И собирать данные иногда нужно отовсюду, так как они не аккумулируются в одном месте.

Сегодня ставили платформу на несколько машин, на некоторых из машин она падала с исключением в perform.dll после ввода логина и пароля пользователя. Переустанавливали другим дистрибутивом, та же самая версия платформы, но источник дистрибутива не известен, кем выложен в общую папку неизвестно, но проблема пропадала. Битый дистрибутив, который ставится без проблем?

Кстати вопрос. Как можно настроить подобный ТЖ всем пользователям, коих больше 1000 не приходя к ним "в гости" в автоматическом режиме? Писать обработчик, который по файловой системе будет "шариться" при входе в программу?
Sedaiko; Plotks2017; +2 Ответить
2. Plotks2017 179 16.04.19 21:15 Сейчас в теме
(1) Именно удивление коллеги, что ТЖ можно на клиенте настроить и побудило написать на сайт.
У наших админов есть скрипты(или средства администрирования) которые позволяют разливать файлы по клиентам, хз как.
С точки зрения программиста 1с, я бы сделал именно так:
Писать обработчик, который по файловой системе будет "шариться" при входе в программу
8. Sedaiko 50 19.04.19 16:23 Сейчас в теме
(1) Если 1000 клиентов - то уже однозначно есть AD с грамотными администраторами. Групповые политики - это сила
3. Xershi 649 17.04.19 00:35 Сейчас в теме
Написали говно код и запостили статью как его исправили, это пять!
alex-l19041; +1 Ответить
4. Plotks2017 179 17.04.19 00:41 Сейчас в теме
(3) Вы разгадали мой хитрый план.
Ну и как его исправить?
5. VmvLer 17.04.19 09:22 Сейчас в теме
(4) Пригласить студента который еще помнит как работать с рекурсией
6. plastyr 17.04.19 10:20 Сейчас в теме
Может быть вопрос тупой, но куда кидать файл ТЖ у пользователя?
7. Plotks2017 179 17.04.19 10:37 Сейчас в теме
(6) туда же куда и на сервере.
Есть такая статья, но в ней не явно не написано, что на клиенте тоже можно это все делать.

Путь обычно "C:\Program Files\1cv8\bin\conf" или аналогичный в зависимости от платформы.
Оставьте свое сообщение