Подскажите по EurekaLog

Soltin

Member
Joined
Feb 7, 2016
Messages
365
Reaction score
70
Виндошном сервисе = устанавливается как системная служба, которая запускается от системного пользователя.
Попробую FastMM.
Проблема в том, что включение ЕЛ приводит к фризам приложения.
 

=FMA=

Member
Joined
Jul 1, 2016
Messages
486
Reaction score
92
Насчет того, чтобы ЕЛ приводил к зависанию не слышал.
В настройках Eurekalog поставь через сколько выдавать ошибку при зависании программы. Если прога сколько-то времени не отвечает, то ЕЛ автоматом сформирует ошибку.
 
Last edited by a moderator:

koka123

Member
Joined
Apr 27, 2009
Messages
20
Reaction score
5
если используется в сервисе, нужно отключить диалог об ошибке, только запись в протокол.
 

JCDenton

Member
Joined
Feb 15, 2013
Messages
158
Reaction score
40
Мне бы хотелось, чтобы в данном случае это видел пользователь, без подключения Eureka.

Ну как бы надо определиться, как EurekaLog должна отличать эти исключения (которые надо показать пользователю) от всех прочих исключений (который надо отправить разрабу).

В зависимости от ответа на вышеуказанный вопрос (и версии EurekaLog) - можно использовать следующее:
1. Собственный класс исключения (и это, вообще, стоит делать всегда, даже если трейсер исключений не используется).
2. Exception Filters.
3. Событие OnExceptionNotify.
4. Атрибут EurekaLogExpected.
5. Ручная маркировка исключения как "expected".
 

Andrik7503

Member
Joined
Jul 19, 2016
Messages
7
Reaction score
0
Подскажите, как можно бы реализовать следующее. Как известно, EurekaLog патчит *.dpr файл при компиляции и добавляет свои юниты в USES секцию в зависимости от своих настроек. Мне нужно, чтоб имея файл проекта без этих вставок от еврики можно было бы сбилдить его при помощи MsBuild, предварительно пропатчив его еврикой. Но как это сделать? В Delphi IDE это делает сама еврика перед билдом. Надо тож самое только без IDE.
 

Andrik7503

Member
Joined
Jul 19, 2016
Messages
7
Reaction score
0
В справке целый раздел "Compiling your project with EurekaLog" есть. Говоря кратко, надо запустить ecc32.exe с параметром --el_alter_exe. Ну и соответственно, если охота MSBuild - то вызов ecc32 надо добавить в success post build event проекта.

Я об этом вкурсе. Но мне нужно сначала пропатчить сами сорсы, так как это делает Delphi IDE. А то что Вы описали я делал, но увы без добавления в USES секцию юнитов еврики это ничего не даст.
 

kolio

Member
Joined
May 22, 2009
Messages
112
Reaction score
15
Age
37
поставил Eurekalog 7.4
но увы в Project не появился пункт
хотя до этого ставил на xe6 - там точно был такой пункт

на офиц. сайте почитал - должно поддерживать XE10.1

инсталляция/деинсталляция не привели к успеху

а их приложение ManageProfiles.exe не показывает моё XE10.1, хотя по идее там должно отображать в каких IDE прописался этот Eurekalog

подскажите - может кто сталкивался с подобным?
или может есть более хорошие логеры?
хотя мне по-факту Eurekalog мне нужен как отлавливатель утечек памяти
 

JCDenton

Member
Joined
Feb 15, 2013
Messages
158
Reaction score
40
приложение ManageProfiles.exe не показывает моё XE10.1

Несложно сообразить, что это означает, что в 7.4 (вышла 26 января) поддержки 10.1 (вышла в апреле) - нет. Машину времени ещё не изобрели.

10.1 поддерживается в 7.5.

Eurekalog мне нужен как отлавливатель утечек памяти

Нафига для этого EurekaLog-то? Чтобы отчёты отправлять? Для отладки памяти локально FastMM в отладочном режиме даст намного больше.
 

tarakan19832

Member
Joined
Aug 12, 2016
Messages
6
Reaction score
0
Eurekalog мне нужен как отлавливатель утечек памяти
Оно мне вообще не понравилось, у меня mdi приложение и я по созданию child форму создаю компонент, а при закрытии формы удаляю, он видит это как утечку, после его удаления, еле заставил работать свой проект
 

Kovryga

Premium
Joined
Aug 10, 2020
Messages
217
Reaction score
40
C помощью чего все же локально лучше отслеживать утечку памяти в проекте FastMM или EL (D7)?
Сама проблема возникает не постоянно: после компиляции и закрытии приложения
 

JCDenton

Member
Joined
Feb 15, 2013
Messages
158
Reaction score
40
EurekaLog - это трейсер исключений. Это означает, что диагностика проблем с памятью - его побочная функциональность. Иными словами, любой строго специализированный инструмент для памяти будет мощнее.

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

Нахрена локально использовать трейсер, если есть отладчик?

Добавлено через 2 минуты
он видит это как утечку

Я сильно сомневаюсь, что фильтр к менеджеру памяти способен генерировать ложные сообщения об утечках. Скорее всего, утечка всё же была.
 
Last edited by a moderator:

eflc

VIP
Joined
Jul 17, 2021
Messages
66
Reaction score
22
Age
37
У меня с EurekaLog было не мало проблем, хотя 3 года более менее работало. После перехода на madExcept всё решилось.
 

ForumReader

Member
Joined
Oct 16, 2008
Messages
8
Reaction score
4
Эврика слишком монструозная. Превратилась из полезной утилиты в огромный комплекс задач, не связанный с изначальной целью, как мне кажется.
madExcept в этом плане гораздо оптимальнее.
 
Top