Простое логирование действий системы

21.03.21

База данных - Статистика базы данных

Маленькое расширение для быстрой организации записи и просмота логов действий системы

Скачать исходный код

Наименование Файл Версия Размер
Простое логирование действий системы:
.cfe 15,66Kb
5
.cfe 15,66Kb 5 Скачать

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

Механизмы не используют объекты, связанные с html как объектом 1С, всё очень примитивно, конкатенация и строковые теги. Нет проверки правильности записываемых в строку данных (валидации html), это на совести разработчика. Зато и разобраться, и доработать под свои нужны совсем просто. Можно использовать как пример, образец, шаблон и основу своих разработок.

Совершенно никакие модули БСП для работы этого расширения не нужны.

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

Есть много солидных серьёзных систем, а это скорее мини-заготовка. Если кто качать не хочет, то вот исходники основной механики, она совсем простая:

 
 Общий модуль "Логирование" (сервер, внешнее соединение, вызов сервера)
 
 Общий модуль "Логирование клиент" (клиент)

И ещё там есть простенькая общая форма просмотра html, где размещено одно строковое поле с видом "Поле html-документа" и процедурой:

 
 Единственное, что нужно в модуле формы

Назначение расширения - "Дополнение", есть основная роль и не-интерфейсная подсистема для всех объектов расширения.

Тестировалось под 8.3.18.1289 и 8.3.18.1363, но заработает на любом релизе выше 8.3.14 (где появился WebKit).

Кому пригодится - будет хорошо.

Логирование протоколирование протокол действий лог ведение логов html

См. также

Автоподбор ролей для профилей и групп доступа в любых типовых базах 1С УТ 11, КА 2, ERP2, Розница 2/3, УНФ 16/3, БП 3, ЗУП 3 и подобных (УФ, Платформа 8.3.14+)

Инструменты администратора БД Роли и права 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 15.12.2023, версия 1.1.

14400 руб.

06.12.2023    3670    19    1    

40

Infostart УДиФ: Управление данными и формами 1С

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 руб.

10.11.2023    4347    12    2    

36

SALE! %

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 2280 руб.

14.01.2013    178760    1084    0    

862

Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    28034    83    146    

61

Система хранения присоединенных файлов в томах на диске

Инструменты администратора БД Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием Платные (руб)

Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.

4200 руб.

10.11.2015    61573    90    59    

74

"Менеджер потоков 2.1": УПП: "Восстановление партий"

Инструменты администратора БД Платформа 1С v8.3 1С:Управление производственным предприятием Россия Бухгалтерский учет Управленческий учет Платные (руб)

Как оптимизировать то, что, считалось, не поддается оптимизации? Как повысить доступность базы данных? Как проводить самую «времяемкую» операцию не по паре раз в неделю, а по несколько раз в день*? Ответ есть!

20000 руб.

12.09.2019    11876    5    9    

7

Конфигурация Session Monitor

Мониторинг Инструменты администратора БД Платформа 1С v8.3 Россия Платные (руб)

Конфигурация Session Monitor предназначена для мониторинга сервера 1С с целью отслеживания чрезмерной нагрузки от конкретных сеансов и скорости реакции рабочих процессов.

1500 руб.

01.12.2020    14423    35    0    

49

Хранилище файлов на SQL

Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Управленческий учет Платные (руб)

Привязка файлов / сканов к объектам 1С с сохранением их на SQL-сервере

12000 руб.

09.10.2019    11198    5    8    

9
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. rabid_otter 134 21.03.21 18:10 Сейчас в теме
1) Если логов будет много, конкатенация может занять очень продолжительное время, используйте СтрСоединить.
У меня как-то провисела операция 8 часов из-за конкатенации огромных строк.
2) Зачем такие огромные попытки?
3) Названия переменных ужасны (стро, рез, пози).
4) Куда лог сохраняется? Если все зависнет, где его искать?
5) Зачем на сервере HTML?

Я делал подсистему логирования, делал так:
1. Никаких выводов в html - это лог, а не гирлянда. Сервис должен выполнять то, для чего он предназначен.
2. Каждое сообщение в лог - по сути структура (за неимением классов в 1С, использовал ее), структура получается из функции СообщениеЛога, куда передается контекст логирования, вместе с сообщенькой.
Контекст логирования - структура с настройками логов.
3. Никаких конкатенаций, только СтрШаблон и СтрСоединить.
4. Сделал 2 варианта логирования - в сервис и в текстовый файл. Количество сообщений, которые flush'атся из буфера настраивается в контекст логирования. То есть программист сам выбирает - можно ли потерять пачку сообщений или же надо сохранять каждое.
BomjBandit; artbear; +2 Ответить
2. Yashazz 4725 21.03.21 21:34 Сейчас в теме
1. Согласен, но эта система была начата ещё на 8.2, а в идеале тогда уж бинаркой лепить быстрее всего.
2. Затем)
3. Не обсуждается
4. Никуда - как сами сделаете, так и будет; и если зависнет - сами думайте, куда надёжнее помещать
5. Не понял, поясните.

1. Это очень даже нормальный лог. Гирлянды, мил-человек, в новый год на ёлку вешают, а лог - это описание действий системы, в читабельном для пользователя виде. Читабельнее хтмл нам 1С ничего не предлагает, даже форматированный документ хуже.
2. Вы не поняли сути публикации, я не об этом. Каждое сообщение в лог должно быть, повторюсь, читабельным для пользователя. Это не технология ведения лога, это механизм накопления читабельных сообщений. Пользователю трижды чхать на внутренность, структура там или нет, ему удобство чтения важнее. Поэтому ежели кому надо, замутит и структуры, и всё остальное.
3. Вот только СтрШаблон с его неявным вызовом сервера нам и не хватало.
4. Рад за вас. Хоть 10 вариантов сделайте, я не об этом. Я за свою практику такие системы логирования делал, что их описание заняло бы неделю даже очень сводно, но, повторюсь, публикация вообще не об этом. Это основа читабельных логов, а не готовая система и тем более не описание принципа.

Собственно, по делу только замечание насчёт конкатенации. Остальное просто не в тему.
3. rabid_otter 134 22.03.21 13:02 Сейчас в теме
(2)

1. Понятно.
2. Cлив засчитан.
3. А как же best practices и все такое?
4. Хм, я может быть в коде не увидел, чтобы он писался куда-то, но по-моему, лог у вас в строке висит в памяти.
5. Я к тому, что HTML - лишняя инфа, лог - это же про описание процесса, а не про украшательства.

1. Не соглашусь, но дело ваше.
2. У нас читателями логов были чаще всего программисты из других ЯП, им HTML не нужен.
3. Хм, про неявный вызов сервера у СтрШаблон не знал. М-да, неужели 1С не додумалась до клиентской реализации строковой функции?! У нас логирование применялось там, где не отладить просто так - в регламентах, на сервере, регламенты работали круглосуточно.
4. Я тоже много чего делал, мне кажется это не относится к этой публикации.
Оставьте свое сообщение