Techlogqueryviewer - Вьювер запросов к СУБД из технологического журнала 1С: Предприятие

17.07.18

База данных - Технологический журнал

Обработка для отображения текстов запросов, формируемых платформой 1С: Предприятие в том виде, в каком они должны быть выполнены на СУБД. Тексты запросов обработка получает из технологического журнала по мере их там постепенного появления. Генерация запросов может вестись как в обычном, так и в управляемом режиме, но сама обработка работает только в обычном режиме.

Скачать файл

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

Наименование По подписке [?] Купить один файл
techlogqueryviewer - v2.7.epf
.epf 22,00Kb ver:2.7
10
10 Скачать (1 SM) Купить за 1 850 руб.

История 

Проект изначально был размещен на хостинге Google Code в декабре 2011 года, однако впоследствии был перенесен на Github из-за того, что на Google Code была отключена возможность размещения новых файлов для скачивания.

Идея проекта была в том, чтобы создать инструмент, похожий на MS SQL Profiler, но такой, чтобы можно было им пользоваться на файловых базах и при этом видеть тексты запросов в терминах конфигурации. Конечно, до удобства и функциональности Profiler-а этой обработке далеко. И, конечно же, в сети даже на момент первой публикации уже было достаточно много похожих инструментов с гораздо более богатым функционалом, однако подобного бесплатного и открытого инструмента мне на момент разработки не попадалось. Не знаю, актуальна ли эта разработка на данный момент, но вот только сейчас пояилось желание поделиться им с общественностью на данном ресурсе.

Условия распространения

Лицензия: MIT Licence

Как пользоваться

Для того, чтобы начать вывод текстов запросов, необходимо нажать на кнопку "Старт". При этом, вывод текстов начнется с некоторой задержкой (до 60-ти секунд) и, конечно, при условии, что в данный момент выполняются запросы к СУБД. Задержка связана с тем, что при включении записи в технологический журнал, платформа начинает эту запись не сразу. В дальнейшем, когда запись в технологический журнал начата, задержка на не нагруженных базах может составить порядка 1-2 секунды после выполнения запроса, на нагруженных - значительно большее время, в этом случае, задержка уже связана с необходимостью постоянного чтения файлов технологического журнала с диска, а также посимвольной обработкой текста что при значительном количестве запросов может стать ресурсоемкой задачей.

Для того, чтобы остановить вывод, необходимо нажать на кнопку "Стоп".

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

Для того, чтобы тексты запросов были представлены с наименованиями объектов, заданных в конфигураторе, а не в виде имен СУБД, необходимо установить флажок "Получать имена объектов по метаданным". Т.е. например в конфигураторе у объекта установлено имя "РегистрСведений.ЦеныНоменклатуры", тогда как в СУБД этот объект может называться скажем "InfoRg15". При включении данного флажка, в текстах запросов регистр будет обозначаться так, как он и называется в конфигураторе т.е. "РегистрСведений.ЦеныНоменклатуры", а не "InfoRg15". Стоит сказать, что в текущей версии обработки, установка флажка не приводит к 100% представлению наименований в том виде в каком они заданы в конфигураторе, это связано с несовершенством алгоритма.

Для того, чтобы очистить окно вывода, необходимо нажать на кнопку "Очистить". При этом, будет очищено только окно вывода, файлы технологического журнала останутся не тронутыми.

Поле "Отбор по тексту" предназначено для отбора запросов по входящим в них словам. Например, среди найденных, есть куча запросов к таблице "УстановкаЦенНоменклатуры", для того, чтобы отобразить только запросы к таблице "УстановкаЦенНоменклатуры" достаточно в поле "Отбор по тексту" написать - "УстановкаЦенНоменклатуры" (без кавычек) и нажать Enter.

Как это работает

При нажатии на кнопку "Старт", в каталоге "Путь к каталогу установки 1С: Предприятие\conf" (например "C:\Program Files\1cv82\8.2.15.294\bin\conf") создается файл "logcfg.xml" с настройками, необходимыми для того, чтобы в технологический журнал начала записываться информация о выполняемых запросах к СУБД. Если файл "logcfg.xml" уже существует, то он переименовывается в "backup_logcfg.xml_порядковый номер копии" и вместо него, создается новый файл настроек. При закрытии обработки, сохраненная версия файла настроек восстанавливается. Если сохраненных копий не создано, то при закрытии, файл настроек просто удаляется и запись в технологический журнал прекращается. Таким образом все устанавливается в то состояние, которое было до запуска обработки. После того как файл "logcfg.xml" создан, по прошествии определенного количества времени (60 секунд максимум) начинается запись в технологический журнал - в файлы текстового формата. Обработка в фоновом режиме выполняет постоянное построчное чтение файлов технологического журнала и если обнаружено событие с текстом запроса, появившееся уже после нажатия на кнопку "Старт" - выводит его на экран.

Файлы технологического журнала располагаются в каталоге "Путь к каталогу установки 1С: Предприятие\conf\logs_techlogqueryviewer" - данный путь указывается в файле настроек "logcfg.xml". После закрытия обработки, файлы технологического журнала не удаляются, предполагается что пользователь удалит их в ручную, при этом, сразу же удалить означенные файлы скорее всего не получится, поскольку доступ к ним ограничен работающим сервером.

Обработка может быть использована как на файловой так и на клиент-серверной версии.

Как скачать

Ссылка на страницу загрузки с GitHub-репозитория: https://github.com/alexkmbk/techlogqueryviewer/releases

Технологический журнал Запросы

См. также

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

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

1 стартмани

15.11.2023    1564    8    AlexSTAL    0    

8

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

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

1 стартмани

13.11.2023    4718    9    AlexSTAL    0    

47

Администрирование СУБД Технологический журнал Системный администратор Бесплатно (free)

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

21.09.2023    7250    Andreynikus    14    

83

Технологический журнал Системный администратор Программист Платформа 1С v8.3 Абонемент ($m)

Целью данного решения является организация хранения и анализа данных из технологического журнала 1С с использованием стека Elasticsearch + Logstash + Kibana.

5 стартмани

18.09.2023    5081    huxuxuya    6    

27
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. hromovanton 7 15.08.16 10:04 Сейчас в теме
Расскажите, пожалуйста, более подробно о настройках logcfg.xml, какие именно запросы будут записываться в лог. Неужели все подряд? А если мне нужны, например, только те запросы, которые выполняются более 3 секунд. Или только запросы по определенной базе данных и т.д.?
3. KAV2 157 15.08.16 11:16 Сейчас в теме
(1) hromovanton, Да, все запросы подряд. Надо сказать что не ставилась задача анализа запросов с целью оптимизации какой-то конкретной, рабочей базы данных. На рабочей базе будет столько запросов что этот вьювер просто захлебнется. Задача была создать удобный инструмент который бы позволял понять что происходит под капотом, например, как работает RLS или динамический список. То есть эта обработка больше подойдет для обучения, нежели для анализа производительности.
5. KAV2 157 15.08.16 11:33 Сейчас в теме
(1) hromovanton, короче основное назначение - визуализация в реалтайме, а не на анализ.
2. gubanoff 63 15.08.16 10:22 Сейчас в теме
(0) Так уже давно есть консоль от 1С с таким же функционалом, плюс в Инструментах разработчика тоже давненько все есть.
4. KAV2 157 15.08.16 11:19 Сейчас в теме
(2) gubanoff, А как называется консоль от 1С? Знаю консоль для настройки технологического журнала, но для вывода запросов в реалтайме не попадалась именно от 1С. В ЦУП-е что-то было, но совсем другое и платное.
6. herfis 513 15.08.16 11:34 Сейчас в теме
(4) Есть еще ИТС-ная "Просмотр технологического журнала". Наверное, о ней речь.
8. KAV2 157 17.07.18 16:14 Сейчас в теме
(6) Ну здоровая конкуренция никогда не помешает, все нюансы в мелочах. Тем более что изначально обработка была опубликована на хостинге Google Code еще в 2011 году.
7. KAV2 157 17.07.18 16:06 Сейчас в теме
Новая версия - 2.7

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