Аварийные дампы и логи платформы 1С 8.3: пути, настройка, сбор для поддержки
Содержание
Дампы 1С 8.3 в Windows ищите в трёх местах: в папке, заданной в файле logcfg.xml (элемент <dump location="...">), в профиле пользователя %LOCALAPPDATA%\1C\1cv8\dumps и в папке отчётов Windows %LOCALAPPDATA%\CrashDumps. У серверных процессов rphost, rmngr и ragent «пользователь» — это учётная запись службы, поэтому их дампы лежат в профиле этой учётки, а не у того, кто сидит за компьютером. В Linux аварийный файл платформы — это обычный core-файл, его место задаёт ядро через core_pattern.
Тема общая для платформы, от конфигурации (БП, ЗУП, УТ) не зависит. Если папок нет или они пустые, запись дампов просто не включена. Ниже — где смотреть, как включить сбор и что приложить к обращению, чтобы сбой реально разобрали.
Где лежат дампы 1С в Windows по умолчанию
Файлы дампов платформы имеют расширение .mdmp. В имени обычно есть имя процесса и версия платформы, например 1cv8c_8.3.24.1548_...mdmp или rphost_8.3.24.1548_...mdmp. Самый быстрый способ найти их — поиск по маске *.mdmp по диску C:.
| Что упало | Где искать в первую очередь | Чей профиль |
|---|---|---|
Тонкий клиент 1cv8c.exe | %LOCALAPPDATA%\1C\1cv8\dumps | Пользователь, у которого упало |
Толстый клиент, Конфигуратор 1cv8.exe | %LOCALAPPDATA%\1C\1cv8\dumps | Пользователь, у которого упало |
Рабочий процесс сервера rphost.exe | Папка из logcfg.xml или профиль службы | Учётная запись службы, часто USR1CV8 |
Менеджер кластера rmngr.exe, агент ragent.exe | Там же, где у rphost | Учётная запись службы |
| Любой процесс, если включён сбор Windows | %LOCALAPPDATA%\CrashDumps или папка из реестра | Тот, под кем работал процесс |
В старых сборках 8.3 клиентские дампы встречаются и в перемещаемом профиле: %APPDATA%\1C\1cv8\dumps. Если в Local пусто, загляните туда.
Переменная %LOCALAPPDATA% раскрывается в C:\Users\<имя>\AppData\Local. Вставьте путь целиком в адресную строку Проводника — папка AppData скрытая, и вручную до неё долго идти.
Для серверной службы путь будет вида C:\Users\USR1CV8\AppData\Local\1C\1cv8\dumps. Если служба запущена от Local System, профиль лежит в C:\Windows\System32\config\systemprofile\AppData\Local. Под какой учёткой работает служба, видно в services.msc → свойства «Агент сервера 1С:Предприятия» → вкладка «Вход в систему».
Где смотреть сам факт падения
Даже если дампа нет, Windows почти всегда фиксирует аварийное завершение. Откройте eventvwr.msc → «Журналы Windows» → «Приложение» и отфильтруйте события с кодом 1000. В записи будут:
- 🧩 имя упавшего процесса (
1cv8c.exe,rphost.exe); - 📦 модуль, в котором случился сбой (
backend.dll,ntdll.dll, сторонняя библиотека); - 🔢 код исключения, например
0xc0000005— нарушение доступа к памяти.
Эти три строки стоит переписать в обращение. По имени модуля часто сразу понятно, виновата платформа, драйвер принтера или внешняя компонента.
Включаем запись дампов в logcfg.xml
Штатный способ управлять дампами 1С — файл logcfg.xml. Тот же файл включает технологический журнал, о нём ниже. Платформа читает его из каталога conf:
C:\Program Files\1cv8\conf\logcfg.xml— действует для всех установленных версий 8.3;C:\Program Files\1cv8\8.3.xx.xxxx\bin\conf\logcfg.xml— только для одной версии.
Если файла нет, создайте его в Блокноте и сохраните в кодировке UTF-8. Минимальный вариант, который пишет полные дампы в отдельную папку:
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<dump create="1" location="D:\1C_dumps" type="3"/>
</config>
Что означают атрибуты:
| Атрибут | Значение | Комментарий |
|---|---|---|
create | 1 — писать дампы, 0 — не писать | Без create="1" настройка не работает |
location | Путь к папке | Папка должна существовать, у службы — права на запись |
type | Тип дампа | 0 — минимальный, 3 — полный, с памятью процесса |
Полный дамп (type="3") поддержка просит чаще всего: в минимальном нет содержимого памяти, и по нему видно только место падения. Платформа перечитывает logcfg.xml примерно раз в минуту, перезапуск службы обычно не нужен.
Полный дамп рабочего процесса занимает столько же, сколько процесс занимал в памяти. У нагруженного rphost это 4–10 ГБ на один файл. Выносите location на диск с запасом места, не указывайте системный диск сервера с базой.
Права на папку для серверной службы
Самая частая причина пустой папки на сервере — служба не может в неё писать. Выдайте учётной записи службы (например, USR1CV8) право «Изменение» на папку D:\1C_dumps через свойства папки → «Безопасность». Для клиента права не нужны, если папка в профиле пользователя.
Дампы через реестр Windows: сбор WER LocalDumps
Если logcfg.xml по какой-то причине не срабатывает, или дамп нужен для процесса, который падает до чтения настроек, подключите сбор средствами Windows. Механизм называется Windows Error Reporting (WER) LocalDumps и работает для любого приложения.
Ключ создаётся в разделе:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps
Внутри можно создать подраздел с именем конкретного процесса, тогда настройка коснётся только его. Пример .reg-файла для рабочего процесса сервера 1С:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\rphost.exe]
"DumpFolder"=hex(2):44,00,3a,00,5c,00,31,00,43,00,5f,00,64,00,75,00,6d,00,70,00,73,00,00,00
"DumpType"=dword:00000002
"DumpCount"=dword:00000005
Здесь DumpFolder — это строка D:\1C_dumps типа REG_EXPAND_SZ (в .reg-файле она записана в шестнадцатеричном виде). Проще создать параметры вручную в regedit:
- Откройте
regeditот имени администратора. - Перейдите в
...\Windows Error Reporting\LocalDumps. Если разделаLocalDumpsнет — создайте его. - Создайте подраздел
rphost.exe(или1cv8c.exe,1cv8.exe— по процессу, который падает). - Добавьте «Расширяемый строковый параметр»
DumpFolderсо значением папки. - Добавьте параметр DWORD
DumpType:1— мини-дамп,2— полный. - Добавьте параметр DWORD
DumpCount— сколько последних файлов хранить, по умолчанию10.
Если DumpFolder не задан, Windows кладёт файлы в %LOCALAPPDATA%\CrashDumps того, под кем работал процесс. Перезагрузка не нужна, настройка действует со следующего падения.
DumpCount спасает диск: при частых падениях старые файлы удаляются, остаются только последние N. Для полного дампа сервера ставьте 3–5.
Файлы WER имеют расширение .dmp и называются по имени процесса и его PID, например rphost.exe.4812.dmp.
Когда что выбирать
| Способ | Плюсы | Минусы |
|---|---|---|
logcfg.xml | Штатно для 1С, без правки реестра, рядом можно включить техжурнал | Не ловит сбои до чтения настроек |
| WER LocalDumps | Работает для любого процесса, включая аварии при старте | Не все падения проходят через WER; нужна правка реестра |
| ProcDump | Ловит то, что пропускают первые два: зависания, «тихое» закрытие | Ручной запуск, нужно следить за процессом |
Дампы и журналы 1С в Linux и macOS
Linux: сервер и клиент
В Linux logcfg.xml кладут в каталог conf установки платформы. Для сборок 8.3.20 и новее это обычно /opt/1cv8/x86_64/8.3.xx.xxxx/conf/, у более ранних — /opt/1C/v8.3/x86_64/conf/. Путь в location пишется в стиле Linux:
<config xmlns="http://v8.1c.ru/v8/tech-log">
<dump create="1" location="/var/log/1c/dumps" type="3"/>
</config>
Папка должна принадлежать пользователю, от которого работает сервер, обычно usr1cv8:
sudo mkdir -p /var/log/1c/dumps
sudo chown usr1cv8:grp1cv8 /var/log/1c/dumps
Аварийный файл в Linux — это core dump. Куда он попадёт, решает ядро:
cat /proc/sys/kernel/core_pattern
- 📍 если вывод начинается с
|/usr/lib/systemd/systemd-coredump, дампы собирает systemd. Смотрите их командойcoredumpctl list, выгружайте —coredumpctl dump <PID> -o /tmp/rphost.core; - 📍 если там шаблон вида
coreили/var/crash/core.%e.%p, файл ляжет в рабочий каталог процесса или по указанному пути; - 📍 в Ubuntu вместо этого может работать
apport, тогда отчёты лежат в/var/crash.
Проверьте, что размер core не ограничен нулём. Для службы systemd лимит задаётся в юните параметром LimitCORE=infinity, команда ulimit -c unlimited действует только на текущую сессию терминала.
Правка юнита службы и systemctl restart завершат все сеансы пользователей на этом сервере. Делайте это вне рабочего времени.
macOS: клиент
Для клиента 1С на macOS дампы платформы обычно не ищут — macOS сама сохраняет отчёт о сбое. Он лежит в ~/Library/Logs/DiagnosticReports, файлы с расширением .ips или .crash. Удобнее открыть приложение «Консоль» → «Отчёты о сбоях» и найти запись с именем процесса 1С. Этот текстовый отчёт со стеком вызовов и прикладывают к обращению.
ProcDump: перехват сбоя, который не оставляет следов
Бывает, что 1С закрывается молча: окна с ошибкой нет, в logcfg-папке пусто, WER ничего не записал. Или процесс не падает, а зависает намертво. Для таких случаев есть ProcDump — бесплатная консольная утилита Microsoft из набора Sysinternals.
Скачайте её с сайта Microsoft, распакуйте в C:\Tools и запускайте из командной строки от имени администратора. Три рабочих сценария:
:: Дождаться запуска клиента и снять полный дамп при необработанном исключении
procdump -accepteula -ma -e -w 1cv8c.exe D:\1C_dumps
:: Конкретный рабочий процесс сервера по PID
procdump -accepteula -ma -e 4812 D:\1C_dumps
:: Процесс завис: снять дамп, если окно не отвечает 5 секунд
procdump -accepteula -ma -h 1cv8c.exe D:\1C_dumps
Ключи, которые здесь используются:
- 🔹
-ma— полный дамп со всей памятью процесса; - 🔹
-e— писать дамп при необработанном исключении; - 🔹
-w— ждать, пока процесс с таким именем запустится; - 🔹
-h— писать дамп при зависании окна; - 🔹
-accepteula— принять лицензию без диалогового окна.
Как найти PID нужного rphost
На сервере обычно несколько процессов rphost.exe. Нужный — тот, который обслуживает проблемную базу. В консоли администрирования серверов 1С откройте «Рабочие процессы» и посмотрите колонку с PID. Либо в Диспетчере задач на вкладке «Подробности» включите колонку «Командная строка» и сопоставьте порты.
Если рабочий процесс перезапускается и PID меняется, ProcDump с указанием PID его потеряет. Тогда надёжнее WER LocalDumps для rphost.exe — он сработает на любом экземпляре.
Утилиту не закрывайте, пока сбой не повторится. Окно консоли должно оставаться открытым — закрыли окно, перехват прекратился.
Логи отладки: технологический журнал рядом с дампом
Дамп показывает, где упал процесс. Что он делал за секунду до этого, видно в технологическом журнале. Поддержка почти всегда просит оба файла за один интервал времени.
Журнал включается в том же logcfg.xml. Пример: дампы плюс запись исключений и аварийных завершений процессов:
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<dump create="1" location="D:\1C_dumps" type="3"/>
<log location="D:\1C_logs" history="48">
<event>
<eq property="name" value="EXCP"/>
</event>
<event>
<eq property="name" value="PROC"/>
</event>
<property name="all"/>
</log>
</config>
EXCP— исключения, в том числе те, что привели к падению;PROC— события процессов: запуск, завершение, аварийный останов;history="48"— хранить журнал 48 часов, старое удаляется само.
В папке появятся подкаталоги по имени и PID процесса, например rphost_4812, а внутри — файлы по часам: 26100915.log означает 9 октября 2026 года, 15 часов (формат ГГММДДЧЧ). По имени файла и времени дампа легко найти нужный кусок.
Не включайте <property name="all"/> для всех событий подряд на рабочем сервере. Журнал без фильтра за час может вырасти на десятки гигабайт и сам замедлит базу. Фильтруйте по событиям, как в примере.
Не путайте техжурнал с журналом регистрации. Журнал регистрации (1Cv8Log в каталоге базы) хранит действия пользователей и прикладные ошибки, но про падение процесса платформы в нём ничего нет.
Как проверить дамп и передать его в поддержку
Быстрый самостоятельный анализ
Посмотреть, где упал процесс, можно самому. Установите WinDbg (бесплатно, из Microsoft Store), откройте файл .mdmp или .dmp через «File → Open dump file» и выполните команду:
!analyze -v
В выводе ищите строки FAULTING_MODULE и MODULE_NAME. Если там сторонняя DLL — антивирус, драйвер принтера, внешняя компонента 1С — проблема чаще всего в ней, и её обновление решит сбой без обращения в поддержку. Если модуль из каталога платформы (core83.dll, backend.dll и подобные), разбираться будут разработчики платформы.
Что собрать для обращения
Как отправить:
- Сожмите дамп в ZIP или 7z. Полные дампы сжимаются в 5–10 раз.
- Опишите воспроизведение: «открываю отчёт ОСВ по счёту 41 за год — клиент закрывается».
- Отправьте обращение на линию поддержки вашего партнёра 1С или в техподдержку фирмы 1С по договору ИТС. Файл больше 50–100 МБ обычно передают ссылкой на облачное хранилище.
Полный дамп содержит всё, что было в памяти процесса: данные базы, логины, иногда пароли. Передавайте его только официальной поддержке и через защищённый канал, не выкладывайте на форумы.
Почему дамп не создаётся: частые проблемы
После того как дампы собраны и отправлены, верните настройки обратно: поставьте create="0" в logcfg.xml или удалите подраздел в LocalDumps. Постоянно включённый сбор полных дампов на сервере рано или поздно заполнит диск.
Частые вопросы
Можно ли удалить старые дампы 1С?
.mdmp и .dmp нужны только для анализа сбоя. После отправки в поддержку их можно удалить, на работу базы это не влияет.