Журнал регистрации на 99 % состоит из фоновых заданий. Что от него оставить нейросети

08.09.26

База данных - Журнал регистрации

Одна минута журнала боевого кластера 1С это 33 816 событий, и людям из них принадлежат около трёхсот. Полный поток штатным методом не читается: сутки на 8.3.27 заняли 23 секунды, а на боевой базе с 49 миллионами событий в сутки неделю не прочитать вовсе. Зато отбор по уровню платформа выполняет у себя: ошибки за десять минут пришли за 47 миллисекунд против 8 секунд. Разбираю состав журнала на семи базах трёх платформ, две грабли 8.3.20, шесть неправд, которых не ловит арифметическая самопроверка, и что нейросеть сделала с десятью килобайтами сводки вместо миллионов строк.

33 816 событий за одну минуту. Столько пишет журнал регистрации боевого кластера 1С из пяти рабочих серверов в обычный дневной час, и это без ночной пакетной обработки, которая поднимает поток до 93 тысяч в минуту. За сутки набегает около 49 миллионов строк. При этом вопрос, с которым администратор открывает журнал, почти всегда один из десятка: кто изменил, кто удалил, почему падает регламентное, что за ошибка повторяется, кто заходил ночью.

Я весь день гонял один и тот же инструмент по семи базам на трёх платформах и записывал, что журнал на самом деле знает о базе, чего не знает, и как из миллионов строк получить десять килобайт, которых нейросети хватает, чтобы разложить проблемы по приоритету. Числа ниже сняты штатным методом платформы, без SQLite, без ClickHouse и без прямого чтения файлов журнала.

Из чего состоит журнал боевой базы

Первое, что стоит знать про свой журнал: человека в нём почти нет. На кластере, с которого снята минута выше, 99,1 процента событий принадлежат фоновым заданиям. Людям остаётся около трёхсот строк из тридцати четырёх тысяч.

Событие Доля за 10 минут Что это
_$Data$_.Update 30 % запись объекта или набора записей
_$Transaction$_.Begin 29 % начало транзакции
_$Transaction$_.Commit 29 % фиксация транзакции
_$Job$_.Start и _$Job$_.Finish 6 % старт и завершение фонового задания
всё остальное 6 % входы, откаты, ошибки, отказы, удаления

Одна минута журнала боевого кластера: 99,1 процента фоновых заданий

Три вида событий дают 88,6 процента журнала, и ни одно из них не отвечает на вопрос "кто". Отвечают те шесть процентов, что в последней строке. Ровно на них и уходит внимание администратора, а платформа при этом пишет и хранит остальные девяносто четыре.

Розничная база на другой платформе показала тот же рисунок с другим составом: фоновых всего 29 процентов, зато 76 процентов журнала это начало и фиксация транзакций. Человек там виден лучше, но полезных событий в потоке всё равно меньше четверти. Практический вывод из этого раздела простой: прежде чем искать в журнале кого-то, стоит посмотреть, кто его пишет.

Почему полный поток не читается

Штатный способ получить журнал из кода один: метод ВыгрузитьЖурналРегистрации с отбором по датам, который наполняет таблицу значений. На нём стоит почти вся полка инструментов для журнала. Вот что он даёт на тестовой базе с платформой 8.3.27, где журнал сравнительно тихий.

Окно Событий Время
1 час 651 150 мс
6 часов 3 516 783 мс
24 часа 96 499 23 056 мс
30 дней не дождался таймаут через 30 секунд

Скорость линейная, около четырёх тысяч событий в секунду. На боевом кластере с 49 миллионами событий в сутки это означало бы больше трёх часов на одни сутки при условии, что таблица значений на 49 миллионов строк вообще поместится в память рабочего процесса. Не поместится. Неделю таким способом не прочитать ни на какой машине, и это свойство подхода: оптимизация кода тут не поможет.

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

Отбор дешевле в 176 раз

У того же метода есть параметр Отбор, и обычно его используют только для дат. Между тем отбор по уровню или по событию платформа выполняет у себя, на стороне хранилища журнала, и в таблицу значений приезжают только подошедшие строки. Один и тот же журнал, одна и та же боевая база:

Запрос Строк Время
полный поток, 1 минута 33 816 1 125 мс
полный поток, 10 минут 297 591 8 267 мс
отбор Уровень = Ошибка, те же 10 минут 5 47 мс
отбор по ошибкам, сутки 403 1 375 мс
отбор по ошибкам, 7 дней 3 114 47 473 мс
отбор по одному событию входа, 1 час 828 1 438 мс

Полный поток против отбора: 47 мс против 8 267 мс

Ошибки за десять минут: 47 миллисекунд против 8 267 у полного потока. Ошибки за неделю с боевого кластера читаются меньше чем за минуту, и это 3 114 строк вместо трёхсот с лишним миллионов.

Ещё дешевле оказывается то, о чём почти не пишут: метод ПолучитьЗначенияОтбораЖурналаРегистрации отдаёт каталог всех значений колонок за весь журнал, без чтения строк. На том же кластере это 1 571 пользователь, 339 компьютеров, 12 приложений, 229 видов событий и 5 рабочих серверов за 47 миллисекунд. Из него, кстати, строится карта псевдонимов ещё до того, как прочитано хоть одно событие.

Отсюда архитектура, которая читает журнал вопросами вместо строк. Ошибки, неудачные входы, отказы в доступе, изменения пользователей и конфигурации, падения заданий читаются отборами целиком за период, по суткам, свежие сутки первыми, чтобы усечение по времени отрезало самое старое. Объёмные потоки вроде входов, откатов и удалений сначала пробуются на последнем часе: если сутки стоили бы больше двадцати секунд, поток заменяется оценкой. А состав журнала и правки данных оцениваются по двенадцати коротким окнам, разнесённым по периоду. Полного скана нет ни в одном режиме. Всё это вынесено в отдельную обработку: Журнал регистрации для нейросети: тринадцать ответов с вердиктами, обезличенный снимок .md и книга .xlsx. Дальше в статье только то, что она показала.

Две грабли платформы 8.3.20, которые стоили полдня

Первая гипотеза была очевидной: раз полный поток опасен, поставим страховку через пятый параметр метода, МаксимальноеКоличество, и никакая порция не превысит лимит. На 8.3.27 это работает как задумано: лимит 100 отдаёт последние сто событий за 41 миллисекунду. На 8.3.20.2290 с отбором по датам тот же лимит в 5 000 вернул 25 301 строку, то есть не ограничил вовсе, и при этом сделал вызов в сорок раз медленнее: 30 секунд против 0,77 без лимита. Гипотеза снята, параметр в обработке не используется ни в одном вызове, и это первое, что стоит проверить, если ваш инструмент для журнала на старой платформе вдруг стал тормозить.

Вторая грабля тоньше. На 8.3.20 отобранная строка стоит от 0,3 до 2,6 миллисекунды, а строка полного потока 0,03. Значит "отбор дешёв" верно для редких событий и неверно для объёмных: входы за сутки на боевой базе это минута чтения, удаления две. Поэтому у объёмных потоков появилась часовая проба, а у редких событий свой бюджет времени. Вторая бухгалтерия того же дня подтвердила, что без пробы нельзя: одно сломанное расширение обмена давало 424 856 ошибок применения за сутки, и поток "редких" событий читал их семнадцать минут при обещанных трёх.

Что люди на самом деле спрашивают у журнала

Перед тем как выбирать вопросы, я разобрал 261 карточку раздела "Журнал регистрации" и 14 тем форумов по одному признаку: зачем человек вообще пришёл. Лидер с большим отрывом это "кто изменил документ и когда", около сорока пяти карточек, причём тридцать из них про версионирование, потому что журнал на этот вопрос отвечает только наполовину: кто и когда, но не что именно. Дальше "кто заходил и сколько работал", "какие ошибки и после какого обновления", "как сократить журнал, он занимает 90 гигабайт", "кто удалил", "почему упало регламентное", "неудачные входы и подбор пароля", "правки задним числом".

Из этого списка получилось тринадцать вопросов, и у каждого свой отбор, свой агрегат и своё правило вердикта: сколько повторов ошибки это "чинить", сколько неудачных входов с одного компьютера это перебор, какая доля откатов ещё норма. Вердикт и лечение печатает движок из реестра, модели достаётся диагноз. Это принципиально: то, что можно посчитать, считает код, а модель объясняет, что из этого следует.

Что нашлось в семи базах за один день

Один инструмент, один день, семь баз: тестовая торговля на 8.3.27, боевой кластер на 8.3.20, ERP и две розницы на 8.3.17, две бухгалтерии и ITIL на 8.3.27. Ни одна не оказалась скучной.

База Что показал журнал
ERP 2.4, 8.3.17, 300 пользователей два расширения не применяются в каждом сеансе: 443 из 37 440 событий окон выборки, около ста тысяч записей за неделю. 12 305 ошибок отражения в регламентированном учёте за четыре ночи от одного задания, 91 процент всех ошибок. События входа отключены в настройке, при этом ошибок 13 585 и отказов в доступе 358: аудит выключен, ошибки пишутся
Розница 2.3, 8.3.17, 197 пользователей 59 учёток входят с трёх и более компьютеров. 1 810 неудачных входов, из них 1 156 без имени пользователя 1С: это аутентификация операционной системы, у события в поле Данные лежит ПользовательОС. 26 571 удаление чеков ККМ фоновым заданием, штатное закрытие смены
Бухгалтерия 3.0, 8.3.27 журнал выключен вовсе: ни одного уровня, каталог отбора пуст. Владелец ждал накопленной истории
вторая Бухгалтерия 3.0, 8.3.27 2 812 событий в минуту, 26 миллионов за неделю, из них 424 856 в сутки это ошибка применения одного расширения. Откатов в окнах 14 процентов от начатых транзакций
ITIL, 8.3.27 журнал пишет только уровень "Ошибка". 1 550 из 1 583 ошибок это одно регламентное извлечение текста из файлов, каждые шесть минут круглые сутки
боевой кластер, 8.3.20, 1 571 пользователь 403 ошибки за сутки это 35 разных текстов; лидеры "соединение с сервером баз данных разорвано администратором" 96 раз и "конфликт блокировок" 60. Семь дней журнала собраны за 106 секунд, 488 тысяч прочитанных строк

Самая дорогая находка не про базы, а про журнал как источник. Входы, неудачные входы, отказы в доступе, откаты и удаления пишутся уровнем "Информация". Это замерено на 8.3.27 и 8.3.20 по колонке Уровень. Журнал, настроенный "только ошибки", по этой причине не содержит аудита вообще: ни кто заходил, ни кому отказано, ни кто удалил. Первая версия инструмента на такой базе честно отвечала "входов нет, отказов нет, удалений нет" с вердиктом "норма", и это была ложь по построению.

Шесть неправд, которых не видит самопроверка

У инструмента есть самопроверка из двенадцати сверок: итог ошибок против суммы по суткам, по пользователям и по текстам, входы против суммы по людям, прочитанное против суммы по потокам. На прогоне по ERP она сошлась двенадцать из двенадцати. В файле при этом стояло шесть неправд, и все шесть нашлись только глазами при сверке снимка с книгой xlsx.

"Неудачных входов за период нет" при отключённом событии: надо "не пишутся". "Изменений конфигурации 200": на самом деле ноль, а двести это потолок списка, забитый ошибками применения расширения из каждого сеанса. "Около 856 откатов в сутки" при одних прочитанных сутках: делили на период вместо прочитанного. "Пропущено суток: 8" за семь дней: проба часа считалась сутками. "Прочитано 3 из 6" при семи календарных днях: дни считались по секундам. И "verПОЛЬЗОВАТЕЛЬ_01məyib" в тексте ошибки: имя пользователя подставилось внутрь чужого слова, потому что замена шла подстрокой, а не целым словом.

Арифметическая сверка ловит потерю строк и не ловит неверный смысл. У каждой правды свой инструмент проверки, и для смысла этот инструмент пока один: положить рядом свод и полный состав и читать. На следующем прогоне той же ERP книга xlsx показала строку "Не отправлено письмо. Сотрудник: имя фамилия отчество", которую нормализация текста ошибки пропустила, потому что резала только по кавычкам и скобкам. Теперь режет и по двоеточию внутри строки.

Что нейросеть сделала с десятью килобайтами

Снимок это не журнал и не его выжимка построчно. Это сводка: что за база и что пишет журнал, таблица тринадцати ответов с вердиктами, лечение по вердиктам "чинить", топ ошибок, состав по окнам, изменения конфигурации и то, что осталось за кадром. Предел 10 240 байт, кириллица в UTF-8 это два байта на знак, то есть около пяти с половиной тысяч знаков. Если полный снимок не влезает, он собирается ступенями: сначала уходят таблицы состава и изменений, потом ошибки, но задание модели, шапка и таблица ответов остаются всегда.

Задание модели стоит в шапке файла, и оно короткое: отвечать как администратор 1С, по каждой строке таблицы дать диагноз и лечение, начать с "чинить", не придумывать чисел, которых нет в файле, а если данных не хватает, назвать, какое событие журнала и за какой срок нужно. Пустой раздел не значит, что проблемы нет: что журнал вообще пишет, сказано в первом разделе.

На снимке розничной базы за неделю модель начала с фразы "главное: чинить ошибки, а не пытаться оптимизировать журнал регистрации", потом перечислила шесть пунктов по убыванию: 320 одинаковых ошибок с одним пользователем, 106 ошибок "значение не является значением объектного типа", регламентное задание с четырьмя падениями, 1 781 откат транзакций как повод для отдельного расследования, 123 изменения пользователей, из которых 106 сделал один человек, и 162 неудачных входа, по которым "доказательств атаки недостаточно, но событие требует проверки". Про удаления двух чеков ККМ она написала "лечение не требуется", потому что в файле это помечено штатным закрытием смены.

И одно место, где модель оказалась осторожнее меня. Про долю фоновых заданий в правках она добавила: "файл содержит только 12 минутных окон, поэтому переносить эти пропорции непосредственно на каждую секунду работы базы нельзя". Это правда, и она стоила мне отдельного урока: на ERP два прогона в один день дали 91 и 4 процента фоновых в правках, потому что одно окно поймало массовую правку справочника размеров на 29 тысяч записей. Оценка по окнам подписана как оценка, и модель это прочитала.

Границы

Журнал знает, кто и когда записал объект, но не знает, что в нём поменялось: состав правок это версионирование, и никакой инструмент поверх журнала этого не изменит. Правки задним числом требуют даты документа, которой в журнале нет. Представления данных инструмент не читает нарочно: там лежат имена контрагентов и суммы, и в снимок для модели им нельзя. На платформе 8.3.17 с журналом в миллионы событий сутки ошибок стоят 10-20 секунд, и семидневный период честно режется до трёх-четырёх суток. Если это мешает, период стоит ставить три дня.

Открытым остаётся вопрос, на который у меня нет хорошего ответа. Если журнал на 94 процента состоит из событий, которые никто никогда не читает, какие из них вы бы отключили первыми у себя, и что вас останавливает?

 

Другие наши инструменты для работы с журналами и нейросетями:

  • Матрица прав доступа для нейросети - следующий шаг после отказов в доступе из журнала: разбираться в самих правах, тем же способом, снимком для модели.
  • Выгрузка метаданных для LLM - чтобы модель понимала, что за объекты стоят в ответах журнала: справочники, регистры и реквизиты одним файлом.
  • Чек-ап СУБД под 1С - если лидер ошибок это конфликты блокировок и разорванные соединения с сервером баз данных, смотреть надо уже на СУБД.
  • Анализ кода внешних обработок - когда в контексте ошибки всплыла внешняя обработка и непонятно, что она делает с базой.

Вступайте в нашу телеграмм-группу Инфостарт

журнал регистрации 1с анализ журнала регистрации ВыгрузитьЖурналРегистрации журнал регистрации нейросеть кто изменил документ 1с неудачные входы 1с

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

SALE! %

Банковские операции Обмен с интернет-банком Мастера заполнения Нейросети Разработчик Бухгалтер Пользователь 1С:Предприятие 8 1C:ERP 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:ERP. Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 1С:Розница 3.0 Платные (руб)

Корректируйте банковские документы быстро и легко! Создайте правило обработки — и оно автоматически применится при загрузке выписки (отбор по любому реквизиту или регулярному выражению). Решение заполняет расшифровку платежа, комиссию эквайринга, подбирает ведомости на выплату зарплаты, помечает дубли из банка на удаление и многое другое. Доплачивать за алгоритмы не нужно — они включены в решение. Обработка работает при загрузке из файлов клиент-банка и через DirectBank. Новое — искусственный интеллект: модель приводит нестандартные назначения платежа к виду, понятному алгоритмам, а ИИ-ассистент прямо в 1С консультирует по решению и разбирает код правил и алгоритмов. Поддерживаются локальные и облачные OpenAI-совместимые модели — данные могут не покидать ваш контур.

17500 руб.

20.12.2024    19852    104    32    

85

Нейросети Системный администратор Разработчик Аналитик Бухгалтер Пользователь Руководитель проекта 1С 8.3 1С:Документооборот 1С:Бухгалтерия 3.0 1С:Зарплата и Управление Персоналом 3.x Россия Платные (руб)

Задавайте вопросы базе 1С обычными словами: получайте данные, находите ошибки и связанные документы, проверяйте права, работайте с вложениями и контролируемо вносите изменения. Всё это работает в самой программе, а Codex и Claude подключаются по желанию.

16990 руб.

30.07.2026    13795    29    4    

28

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданным 1С, справке синтакс-помощника и проверки синтаксиса.

15250 руб.

25.08.2025    71858    142    41    

151

Журнал регистрации Системный администратор 1С:Предприятие 8 1C:Бухгалтерия Платные (руб)

Конфигурация LogiCH эффективно решает проблему хранения и анализа записей журналов регистрации. Разработка использует столбцовую СУБД ClickHouse, одну из самых быстрых Big Data OLAP СУБД. Любой анализ журнала можно выполнить в одном отчете, в котором доступны все возможности СКД с учетом ограничений RLS. Количество подключаемых баз не ограничено и не влияет на скорость построения анализа.

6100 руб.

28.11.2018    24838    24    9    

49

Распознавание документов и образов Нейросети 1С:Предприятие 8 1С 8.3 1С 8.5 1C:Бухгалтерия 1С:Зарплата и Управление Персоналом 3.x Беларусь Россия Казахстан Армения Платные (руб)

ИИ-сканер документов с REST API для интеграции с 1С и корпоративными системами. Извлекайте данные из счетов, паспортов, дипломов, патентов и трудовых книжек за секунды. Точность человека - скорость машины. Приложение поддерживает восемь типов документов, четырех провайдеров ИИ (имеется возможность использования локальных ИИ), локальный REST API и экспорт в JSON. Важно! модель должна поддерживать функцию Vision (распознавание файлов и картинок). Запускайте используя локальные ИИ, без подписок и ограничений

6100 руб.

24.08.2026    644    3    0    

1

Журнал регистрации Системный администратор 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

История изменений реквизитов и табличных частей справочников, документов, независимых регистров сведений, возможность отката изменения, восстановление удаленных объектов, сбор статистики использования базы 1С. Альтернативный журнал регистрации.

23180 руб.

22.02.2018    39344    64    56    

59

Нейросети Разработчик 1С:Предприятие 8 Россия Бесплатно (free)

Как связать 1С и Cursor через MCP так, чтобы AI-агент сам получал актуальную конфигурацию из информационной базы, находил нужный BSL-код, вносил изменения, загружал конфигурацию обратно и запускал 1С:Предприятие. В статье — настройка 1C: Platform Tools, 1C: Platform Tools MCP, OneScript, vanessa-runner и env.json, а также важные нюансы при работе с несколькими проектами, IPC-портами, большими конфигурациями и длительными операциями загрузки. Покажу полный практический цикл на тестовой базе без ручной выгрузки и загрузки XML через Конфигуратор.

28.08.2026    19847    rinat1c    18    

31

Нейросети Разработчик 1С 8.3 Бесплатно (free)

Один проход модели по вопросу из 28 знаков стоит 631 296 умножений и 4,8 секунды. Столько берёт языковая модель на 21 920 параметров, посчитанная прямо в 1С средствами самой платформы. На ней разбираю по шагам, что стоит за каждым словом из модного словаря: токен, словарь, вектор символа, вес, слой, голова внимания, контекст, softmax, температура, KV-кэш. Отдельно про температуру - она вообще не про креативность и управляет выбором буквы уже после того, как модель закончила работу. Отдельно про галлюцинацию - показываю в цикле генерации место, куда физически невозможно вставить "не знаю". Плюс расчёт потолка для встроенного языка, замер цены размера модели и история про метод платформы, которого не существует.

20.08.2026    7121    nedomolkov.ivan    16    

25
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Ninel_S 38 08.09.26 17:10 Сейчас в теме
Коллега, Вы создали красивый пример того, как правильная архитектура данных на входе решает проблему галлюцинаций модели и экономии контекста изящнее, чем любые попытки сложного промпт-инжиниринга.

Нейросеть у Вас - это экспертный интерпретатор заранее подготовленных данных.

Она:

- не читает журнал,

- не фильтрует события,

- не делает выборки,

- не строит агрегаты,

- не занимается производительностью.

Все эти "НЕ-задачи" выполняет архитектура обработки журнала. Архитектура обработки журнала - это умный фильтр и агрегатор, который делает всю тяжёлую работу до нейросети.

А нейросеть:

- получает компактный снимок,

- читает его как администратор,

- ставит диагнозы,

- предлагает лечение,

- расставляет приоритеты,

- указывает, каких данных не хватает.

Браво, Коллега!
2. nedomolkov.ivan 259 08.09.26 20:12 Сейчас в теме
( 1 ) Спасибо. Так и есть: модель ничего не ищет, она читает готовый срез. Трудным местом оказался не сбор, а отбрасывание. Из 49 миллионов строк за сутки в снимок уходит около десяти килобайт, и лишний критерий отбора режет вместе с шумом нужное. Отбирал по десятку вопросов, с которыми администратор реально открывает журнал.
Для отправки сообщения требуется регистрация/авторизация