Ускорение типовой 1С

09.12.19

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

Упрощаем журнал регистрации.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Ускорение типовой 1С:
.epf 6,88Kb
6
6 Скачать (5 SM) Купить за 3 050 руб.

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

Потому что нагруженная система не может зависеть от последовательной записи в текстовый файл. Потому что записи журнала регистрации не информативны. Например, при изменении цен в журнал регистрации для каждой строки регистра добавляется запись. 

Другие компании тоже отключают подробный журнал регистрации.

У нас порядка 200 пользователей, отключение журнала улучшило глобальный APDEX на 10%. Это самое заметное изменение с начала наблюдений. 

Что же нужно сделать прежде, чем зайти темной ночью в конфигуратор и нажать Администрирование – Настройка журнала регистрации ?


Чтобы сохранять информацию о записи - сделаем подписки при записи

  • ПриЗаписиРегистрСведенийНаборЗаписейВместоЖурналаРегистрации()
  • ПриЗаписиСправочникаВместоЖурналаРегистрации()
  • ПриЗаписиДокументаВместоЖурналаРегистрации()

Запись в СУБД происходит гораздо быстрее, чем в журнал. Тексты процедур прилагаются в модуле обработки, их нужно копировать в общий модуль вашей программы, создать подписки.

Для исключения отдельных объектов из мониторинга, применяем функцию "ИсключаемыеОбъекты()". Ее можно поместить в тот же общий модуль вашей программы, или повторно-используемый модуль, если вы будете делать в функции запрос к данным.

Список исключаемых объектов обязательно должен содержать некоторые системные объекты. Кроме этого, можно исключить регистры, которые изменяются документами и регистры, которые заполняются автоматически. Их удобно находить по большому количеству записей, пример в модуле формы обработки, процедура ПриСозданииНаСервере(), смотрите в отладчике.

В программе должны быть включены замеры времени (APDEX, БСП). Все фрагменты кода тестированы на УТ 11.4.9.82, платформа 8.3.12.1714. Ответственность автора не превышает 4 SM. Техподдержка в комментариях.

отключить журнал регистрации

См. также

Журнал регистрации Мониторинг Системный администратор Программист Бизнес-аналитик Руководитель проекта Платформа 1С v8.3 Платные (руб)

В сферу обязанностей при работе с клиентами входит контроль работы баз данных и серверов 1С. Нужно понимать что происходит в базах, есть ли ошибки, зависания у пользователей и фоновых задач, блокировки или какое-то необычное поведение системы, получение информации о причинах возникновения проблем и их оперативное устранение и т.д. В качестве источников информации использую консоль кластеров 1С, технологический журнал 1С, журналы регистрации базы 1С. Для автоматизации части операций мониторинга и анализа создал инструмент на основе 1С.

9000 руб.

28.08.2019    34138    22    21    

75

Журнал регистрации Системный администратор Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

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

6000 руб.

28.11.2018    20892    17    7    

42

Журнал регистрации Программист Россия Бесплатно (free)

В материале рассматривается сравнение двух инструментов для работы с журналом регистрации 1С: утилиты ibcmd и платформы Vector. Описаны их функциональные возможности, тестирование производительности и практическое применение для преобразования логов в формат JSON.

20.11.2024    1159    user1913000    11    

19

Журнал регистрации Тестирование QA Программист Бесплатно (free)

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

21.10.2024    3095    leemuar    8    

23

Инструменты администратора БД Журнал регистрации Системный администратор Платформа 1С v8.3 1С:Управление торговлей 11 Абонемент ($m)

Внешняя обработка для регламентного сокращения журнала регистрации для конфигураций на базе БСП и платформы 8.3.20+

1 стартмани

29.12.2023    2227    31    dima_gsv    3    

13

Журнал регистрации Мониторинг Системный администратор Программист Абонемент ($m)

Как легко и быстро с помощью специализированных решений собирать, парсить и передавать логи и метрики.

1 стартмани

19.11.2023    1501    5    AlexSTAL    0    

8

Мониторинг Журнал регистрации Технологический журнал Системный администратор Программист Абонемент ($m)

Как легко и быстро с помощью специализированных решений собирать, парсить и передавать логи и метрики.

1 стартмани

13.11.2023    4878    9    AlexSTAL    0    

47

Журнал регистрации Инструменты администратора БД Мониторинг Мессенджеры и боты Системный администратор Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х Абонемент ($m)

Внешняя обработка для БСП-конфигураций с простым программным интерфейсом. Предназначена для мониторинга состояния системы. Базово реализована отправка ошибок из журнала регистрации, но можно легко добавить мониторинг других журналов, каких-либо действий пользователей, состояния системы (например закрытие месяца).

3 стартмани

26.09.2023    2903    19    doom2good    16    

14
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. sapervodichka 6918 09.12.19 10:16 Сейчас в теме
А если отключить сбор данных APDEX в программе глобальный APDEX это улучшит?
dabu-dabu; acanta; +2 Ответить
4. vtv74 51 09.12.19 11:21 Сейчас в теме
(1) Здравствуйте !

APDEX собираем на сервере СУБД, где запись сильно оптимизирована, а журнал регистрации - на сервере приложений, последовательно в текстовый файл.

Поэтому разница огромная.

При отключении APDEX вау-эффекта не было.
5. sapervodichka 6918 09.12.19 12:58 Сейчас в теме
(4) Пару лет уже не видел текстовые файлы журналов регистрации, вы уверены что они текстовые?
7. vtv74 51 09.12.19 14:43 Сейчас в теме
(5) В приведенном примере Билайн формат файла старый, то есть текстовый. У нас встречаются оба варианта.
21. sapervodichka 6918 09.12.19 22:14 Сейчас в теме
(7) Какую-то картошку с макаронами пытаетесь подсунуть =) Не знаю кто это творение будет применять... если кто-то будет, то "Азамат, где логика?" напишите зачем это придумали ))) В примере Билайн?! Ну конечно а я то думал Теле2
27. vtv74 51 10.12.19 08:05 Сейчас в теме
(21) Зря Вы становитесь на темную сторону, Дмитрий !
Журнал регистрации must die.
Нормальные пацаны его не используют.
Вместо того, чтобы троллить бедную девочку
Лучше поделитесь своим опытом, как Вы делаете

??
29. nomad_irk 76 10.12.19 08:17 Сейчас в теме
(27)И давно нормальные пацаны перестали использовать ЖР?
dabu-dabu; sapervodichka; +2 Ответить
31. vtv74 51 10.12.19 08:30 Сейчас в теме
(29) Думаете, в системах 500+ пользователей кто-то использует полный журнал регистрации ? Серьезно ?
34. nomad_irk 76 10.12.19 08:50 Сейчас в теме
(31)Вполне.
Прикрепленные файлы:
35. vtv74 51 10.12.19 08:58 Сейчас в теме
(34) Внушительно, но еще не 500+
36. nomad_irk 76 10.12.19 09:00 Сейчас в теме
(35)Так и файлы ЖР не видны среди таких, в которые запись происходит с какой-то большой скоростью.
37. vtv74 51 10.12.19 09:14 Сейчас в теме
(36)
1. Конфигурация сильно отличается от типовой ?
2. Насколько вырастает ЖР за день ?
38. nomad_irk 76 10.12.19 09:25 Сейчас в теме
(37)1. Сильно.
Прикрепленные файлы:
sapervodichka; +1 Ответить
39. vtv74 51 10.12.19 09:34 Сейчас в теме
(38) У нас был такой же объем журнала. То, что в него не происходит запись - не показатель. Кеш диска занят, оперативная память тоже. Попробуйте сделать ЖР менее подробным. Благодарить потом будете. (Но будет поздно.)
40. nomad_irk 76 10.12.19 09:37 Сейчас в теме
(39)Так может все же разобраться с причинами занятости кэша диска и оперативной памяти, прежде чем городить вот это все, не?
У нас нет необходимости снижать уровень детализации ЖР, во всяком случае пока.
41. vtv74 51 10.12.19 09:48 Сейчас в теме
(40) если нет проблем с быстродействием, то ничего не нужно, это правда.
2. nomad_irk 76 09.12.19 10:48 Сейчас в теме
(0)Из публикации абслютно не понятно, какие еще действия административного характера были произведены прежде, чем прибегнуть к кардинальным мерам, т.е. снижению уровня детализации ЖР.
dabu-dabu; ixijixi; t278; sapervodichka; +4 Ответить
3. vtv74 51 09.12.19 11:17 Сейчас в теме
(2) Здравствуйте !

Действий административного характера нам не потребовалось: наши пользователи не смотрят в журнал. События регистрируются также полно, как и раньше но теперь в регистре. Можно делать отчеты.
6. sapervodichka 6918 09.12.19 14:06 Сейчас в теме
Вячеслав Гилёв (>_<) /* наверное нервно закурил в сторонке, подумывая: "А не открыть ли часом бьюти блог на youtube?!"
dabu-dabu; ixijixi; acanta; nomad_irk; +4 Ответить
8. acanta 09.12.19 14:44 Сейчас в теме
10. vtv74 51 09.12.19 14:59 Сейчас в теме
(8) Здравствуйте, Анна !

это видео про технологический журнал, а не про журнал регистрации ?
14. acanta 09.12.19 15:26 Сейчас в теме
(10) мы никогда не включаем подробнее чем 3 уровень детализации, обычно 2. При необходимости включается технологический журнал как в видео.
9. vtv74 51 09.12.19 14:46 Сейчас в теме
(6) Кстати, в Вашей фирме наверное давно отказались от подробного журнала регистрации ?
11. leemuar 22 09.12.19 15:07 Сейчас в теме
В целом направление, конечно, правильное: не нужно логировать ненужную информацию, логирование не должно ощутимо замедлять работу системы.

Обратите внимание, что запись в регистр имеет свои недостатки, о которых я рассказывал в докладе "Логирование в приложениях" на Инфостарт 2018:

- у вас растет таблица регистра, а это влияет на время резервного копирования и восстановления, размер бекапов. При большом объеме логов - существенно.
- в отличие от журнала регистрации, с регистром вы не можете записывать ошибки в транзакции. Вы не увидите в регистре запись, если ошибка произошла в транзакции. ПриЗаписи выполняется в транзакции.


Еще одним решением проблемы может быть вынесение жернала регистрации на отдельный сервер. Но такой вариант емнип очень дорог в реализации из-за лицензирования и необходимости администрирования лишних вычмощностей, поэтому зачастую не применяется
12. nomad_irk 76 09.12.19 15:11 Сейчас в теме
(11)ИМХО, оптимальный способ: выгружать ЖР во внешнюю БД и выполнять усечение оперативного ЖР. Размер оперативного ЖР - 3-5-7 дней - этого вполне достаточно для анализа.
Ну и выделение под ЖР отдельного физического диска - это вообще первое, что необходимо сделать.
16. vtv74 51 09.12.19 15:46 Сейчас в теме
(12) У нас проблемы были не из-за места, а из-за замедления записи на сервере приложений.
46. DonAlPatino 178 13.12.19 12:45 Сейчас в теме
(16) SSD под текущие журналы, а остальное в архив?
45. DonAlPatino 178 13.12.19 12:44 Сейчас в теме
(12) В ELK, в ELK грузите! Сложнейшая загрузка журнала регистрации в ElasticSearch
PS
Сейчас придет comol и предложит ClickHouse c Grafana:-)
15. vtv74 51 09.12.19 15:45 Сейчас в теме
(11) Здравствуйте !

- в отличие от журнала регистрации, с регистром вы не можете записывать ошибки в транзакции. Вы не увидите в регистре запись, если ошибка произошла в транзакции. ПриЗаписи выполняется в транзакции.


Спасибо за уточнение. Нужно иметь ввиду, что журнал регистрации тоже неполный: в технологическом журнале регистрируется больше ошибок.
13. leemuar 22 09.12.19 15:11 Сейчас в теме
> Запись в СУБД происходит гораздо быстрее, чем в журнал

На сколько быстрее? Вы проводили замеры на сколько именно? И с чем это связано?
Например, СУБД может работать на быстрых дисках, а журнал регистрации размещен на обычных дисках, в разделе ОС с постоянными очередями к диску.
dabu-dabu; ixijixi; Ганс; collider; +4 Ответить
17. vtv74 51 09.12.19 15:49 Сейчас в теме
(13) Замеры не производили.
18. milanse 38 09.12.19 18:09 Сейчас в теме
(13) Тоже с трудом верится в такие чудеса, если только на сервере 1С совсем уж убогая дисковая подсистема, но тогда решением было бы перенос папок на более быстрый диск.

Сам использую ЖР в текстовом виде, потом выгружаю его в отдельную базу, при загрузке откидываю лишнее.
19. vtv74 51 09.12.19 19:02 Сейчас в теме
(18) Здравствуйте !

Мы не проводили замеры скорости диска, но APDEX заметно изменился.

Система не убогая, скорее наоборот: породистое СХД.

За день журнал вырастал до 1 Гб. Это сопоставимо с ростом основной базы.

У вас сколько пользователей ? На сколько растет журнал ? Попробуйте отключить ?
22. milanse 38 09.12.19 23:05 Сейчас в теме
(19) пользователей порядка 200, журналы тоже могут быть по гигу и более. У меня было много логов в файлы, их передали на логи в жр, тут скорость возросла. Но чтобы жр переделать на регистр не задумывались. Я правильно понимаю что у вас жр старого формата, не sqlite ? Может есть какие особенности конфы / релиза 1с . ? Я точно знаю что в нашей конфе есть приличный запас по оптимизации кода , поэтому переделывать жр пока нет времени. Но по возможности обязательно попробую
47. DonAlPatino 178 13.12.19 12:47 Сейчас в теме
(19) "породистое СХД" к сожаление не отменяет "убогости". И чем выше "породистость", тем более высокая квалификация администраторов требуется, чтобы все это быстро работало..
20. handscenter 68 09.12.19 20:28 Сейчас в теме
В использовании ЖР главная проблема не запись, а чтение. Если кто то попробует сделать какой то отбор( особенно с динамически) по ЖР с большим количеством записей. То это приводит к "зависанию" работы всех пользователей до завершения такого отбора.
Не верите? :)
WellMaster; triviumfan; +2 Ответить
23. triviumfan 97 10.12.19 01:23 Сейчас в теме
(20) Верим, уже пробовали.
26. vtv74 51 10.12.19 08:00 Сейчас в теме
(20) Здравствуйте !

Верим, видели такое чудо.
Когда откажетесь от подробного журнала, все станет лучше: и запись и чтение.
Зря Вы пользователей пускаете в журнал.
Когда перенесете запись в регистр - нужно будет дополнительный отчет делать.

Кстати, похожий отчет можно сделать по регистру сведений "Версионирование..".
Он менее подробный, зато можно получать объекты.
24. triviumfan 97 10.12.19 01:23 Сейчас в теме
Я бы сменил заголовок, он путает. Или это для кликабельности?!
25. vtv74 51 10.12.19 07:56 Сейчас в теме
(24) Здравствуйте !

В статье описывается способ ускорить типовую конфигурацию без изменений.

Что бы Вы изменили ?
28. nomad_irk 76 10.12.19 08:11 Сейчас в теме
(25)
В статье описывается способ ускорить типовую конфигурацию без изменений.

Да ладно? А процедуры общих модулей святым духом в конфигурацию попадут, как и подписки на события их использующие?
sapervodichka; +1 Ответить
30. vtv74 51 10.12.19 08:27 Сейчас в теме
(28) Это не изменение, а дополнение конфигурации. Почувствуйте разницу.
32. nomad_irk 76 10.12.19 08:33 Сейчас в теме
(30) Для работы дополнения необходимо включать возможность изменения конфигурации. Это во-первых.
Во-вторых: для того, чтобы вообще работало дополнение конфигурации, сама конфигурация должна быть в режиме совместимости не меньше чем, 8.3.чего-то там.
sapervodichka; +1 Ответить
33. vtv74 51 10.12.19 08:44 Сейчас в теме
(32) Включить возможность изменений и добавить объект это не то же самое,
что изменить типовой объект.

Пожалуйста, не путайте механизм расширения конфигурации
с объектами, которые конфигурацию дополняют.
42. mikele_bes 8 10.12.19 10:11 Сейчас в теме
Не согласен с позицией автора.
1. Журнал регистрации полезен, он содержит данные об авторизации, отказе в доступе к метаданным, ошибки, информацию об изменении данных. Часто пишу в него дополнительную информацию. Имхо, единственное, что стоило бы отключить (если бы это было возможно) - это данные об изменении регистров, как раз они абсолютно неинформативны и отбирают много места.
2. Журнал работает очень быстро. Его надо поместить на ssd отдельно от баз SQL и tempdb.
3. Как уже правильно заметили, запись в регистр не сможет содержать данные отмененных транзакций, вряд ли будет быстрее записи в журнал регистрации.

Я использую журнал регистрации, ночью данные фильтруются и переносятся во внешнюю базу. Журнал режется до нескольких недель.
43. vtv74 51 10.12.19 10:47 Сейчас в теме
(42) Здравствуйте !

Не буду с вами спорить: если Вы всем довольны - значит, вы правы.

Уже упоминали, что в журнал регистрации не попадают многие ошибки, которые есть в технологическом журнале.
44. mikele_bes 8 10.12.19 11:49 Сейчас в теме
Я не писал, что не использую технологический журнал. Использую.
Одно другому не мешает, а дополняет.
48. VKislitsin 1015 22.12.19 15:15 Сейчас в теме
Мария, я поставил плюс. Но вынужден не согласиться :) Особенно с формулировкой на картинке.
Зачастую ЖР - единственный источник информации для расследования вопросов вида "а кто это сделал?"
И заранее предвидеть какой будет вопрос и когда он возникнет, невозможно. Поэтому хранить нужно всю доступную информацию.
В комментариях приводились скриншоты с неким, достаточно большим количеством пользователей. Я не могу привести скриншоты, могу лишь бездоказательно сообщить что в некоторых из "моих" систем, работает больше 1000 пользователей (одновременно). ЖР собирается полный. В "старом" формате. Регулярно архивируется (непосредственно из базы доступны последние 2 недели) и хранится не менее 3 лет, согласно регламенту.
Возможно, для кого-то Ваше предложение имеет практический смысл. Спасибо что продемонстрировали числовой эффект в процентах от такого решения. Излишним я считаю лишь категоричность утверждения.
Оставьте свое сообщение