Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум на Исходниках.RU > Delphi: Общие вопросы > Посоветуйте систему логирования для приложений |
Автор: notbugme 16.04.22, 05:57 |
Здравствуйте, коллеги! Посоветуйте пожалуйста систему ведения логов для делфи приложений с возможностью реал-тайм мониторинга, в идеале - со встраиваемым в приложение UI-контролом для чтения логов. Наличие возможности фильтрации данных в логе - крайне приветствуется. Обязательное условие: система логирования не должна тянуть за собой сторонние библиотеки и тем более - COM объекты |
Автор: Rouse_ 16.04.22, 06:57 |
Если гибкое и настраиваемое логирование то ищи что-то на основе Log4. Например https://github.com/kartmatias/log4delphi |
Автор: notbugme 16.04.22, 11:01 |
Насколько я понял, в этом логгере нет ни реал-тайм мониторинга с помощью внешней утилиты, ни UI-контрола для просмотра текущего лога в самом приложении. Я уже пробовал несколько решений, но они мне не подошли: опенсорсный GExperts Debug и проприетарный SmartInspect. К сожалению, оба логгера, хоть и имеют реал-тайм мониторинг через внешнюю программу, имеют и свои недостатки. GExperts портитивен но малофункционален, для SmartInspect же нужно устанавливать прогамму для мониторинга отдельным инсталлером. К тому же оба приложения для мониторинга "падают" при большом объеме логов, что уже совсем плохо. Пробовал реализовать логгинг через sqlite для удобной фильтрации логов, но он работает только в однопоточных системах из-за кода самого sqlite. Более тяжёлые БД не вариант из-за того, что с приложением нужно будет тащить огромную кучу библиотек и просто для реализации логгинга это совсем уж перебор. |
Автор: Rouse_ 17.04.22, 15:22 |
Внешний рантайм мониторинг???? Хм, ничего тогда не приходит в голову как OutputDebugString() ну и тулза от Руссиновича |
Автор: notbugme 17.04.22, 18:10 |
Это совершенно неудобное решение. Во-первых туда сливает инфу вся система, во-вторых, отладка многопоточного приложения превращается в кошмар, а если к тому же запущено несколько инстансов то задача разобраться в логе становится практически нереальной. Мне бы лучше какое-то готовое решение, платное также подойдёт. |
Автор: Fr0sT 19.04.22, 13:13 |
https://github.com/Fr0sT-Brutal/awesome-pascal#logging |