powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Изменение поведения EurekaLog
13 сообщений из 13, страница 1 из 1
Изменение поведения EurekaLog
    #40096010
Lisichkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!
Вопрос по EurekaLog:
У нас в проекте EurekaLog добавляется с помощью пост обработки компилятора:
"$(BDS)\Bin\ecc32.exe" --el_nostats --el_alter_exe"$(PROJECTPATH);$(OUTPUTPATH)" --el_config"$(PROJECTDIR)\memleak.eof"

В файле memleak.eof содержаться опции для EurekaLog для анализа утечек памяти:
soCmpFreeMemory=1 (Я прав что именно этот флаг отвечает за поиск утечек)
soCmpTotalMemory=1

Как можно добиться того что бы окно об утечках памяти не возникало, а генерировался файл лога (как например FastMM4 MemoryManager_EventLog.txt) ?
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096057
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lisichkin,

вот что нашёл в справке к 4-ой версии

(это если из кода)

Код: pascal
1.
2.
//v.4:
//function CurrentEurekaLogOptions: TEurekaModuleOptions; 



Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
uses ExceptionLog, ECore, ETypes; // The required units... 

begin 
  ... 
  CurrentEurekaLogOptions.ShowExceptionDialog := False; 
  CurrentEurekaLogOptions.SaveLogFile := True;
  CurrentEurekaLogOptions.OutputPath := ExtractFilePath(ParamStr(0)); 
  ... 
end; 
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096078
Lisichkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У нас 7.X
И мы используем EurekaLog не традиционным способом ecc32.exe :)
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096101
GunSmoker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lisichkin
В файле memleak.eof содержаться опции для EurekaLog для анализа утечек памяти:
soCmpFreeMemory=1 (Я прав что именно этот флаг отвечает за поиск утечек)
soCmpTotalMemory=1

Это опции, что включать в файл отчёта :
el-fileComputer:
------------------------------------------------------------------------------------
5.2 Total Memory : 4293558272 (4.00 Gb)
5.3 Free Memory : 1398812672 (1.30 Gb)

Опции для утечек имеют префикс lo (leaks options), например, loCatchLeaks, loEnableMMDebugMode и т.п.

Я, правда, не понял, зачем это надо, если все опции можно изменить через GUI.
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096103
GunSmoker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lisichkin
"$(BDS)\Bin\ecc32.exe" --el_nostats --el_alter_exe"$(PROJECTPATH);$(OUTPUTPATH)" --el_config"$(PROJECTDIR)\ memleak.eof "
Как можно добиться того что бы окно об утечках памяти не возникало, а генерировался файл лога (как например FastMM4 MemoryManager_EventLog.txt) ?


Не очень понятно, диалог надо вообще отключить, или пусть диалог будет для исключений, но скрыт для утечек?
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096106
GunSmoker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если надо отключить диалог только для утечек, но не отключать для исключений - надо изменить настройки до начала проверок утечек.

Если грубо, то можно так:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
uses
  ETypes, // для edtNone
  EModules; // для CurrentEurekaLogOptions

initialization
finalization
  CurrentEurekaLogOptions.ExceptionDialogType := edtNone;
end.



Если делать правильно, то пример прямо в справке есть .
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096116
Lisichkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GunSmoker
Приятно слышать :)
Диалог нужно отключить совсем - планируем анализ утечек при UnutTest'ах для понимания что преодолен порог утечек и нужно возвращать задачу разработчику
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096118
GunSmoker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lisichkin
Диалог нужно отключить совсем


1. На вкладке настроек диалогов поставить Dialog Type в None.
2. Если используется отправка отчётов, то в опциях отправки отключить визуальное сопровождение.
3. В дополнительных опциях отключить MessageBox-ы.
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096119
Lisichkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему проект меняет exe через ecc32.exe - не знаю - это устоявшийся старый проект.
Нужно поменять поведение именно через memleak.eof, а в нем я не нашел параметров отключения показа окна утечек (при завершении) и сохранении данных в лог
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096121
GunSmoker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не понимаю, в чём проблема? Редактируйте memleak.eof.
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096125
Lisichkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какие параметры memleak.eof отвечают за отображение/скрытие окна показа утечек, формирования файла лога ?
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096131
GunSmoker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем вам редактировать его вручную-то, я никак не пойму? Редактируйте через GUI. Создали любой проект Импорт - изменили - Экспорт.

Если IDE не стоит, то Пуск / Программы / EurekaLog / Tools / Settings Editor.

Но если вот прям упорно хочется руками, то в справке в скобочках к каждой опции подписано имя свойства , а там через EConsts можно глянуть (не всегда имя опции в файле в точности равно имени свойства).
...
Рейтинг: 0 / 0
Изменение поведения EurekaLog
    #40096138
Lisichkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Температурю - вот и торможу :)
Рабочие места в компании у разработчиков устроены так, кто EurekaLog может быть не инсталлирована в системе - файлы берутся из git/mercurial.
Настроил условную компиляцию:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
{$IFDEF EUREKALOG}
initialization
finalization
  if IsMemLeaksEnabled then
  begin
   CurrentEurekaLogOptions.SaveLogFile := True;
   CurrentEurekaLogOptions.OutputPath := .... + '\Leaks.el';
   {$IFDEF UNIT_TEST}
   CurrentEurekaLogOptions.ExceptionDialogType := edtNone;
   CurrentEurekaLogOptions.sndShowSendDialog := False;
   CurrentEurekaLogOptions.sndShowSuccessMsg := False;
   CurrentEurekaLogOptions.sndShowSuccessBugClosedOnlyMsg := False;
   CurrentEurekaLogOptions.sndShowFailureMsg := False;
   {$ENDIF}
  end;
{$ENDIF}
end.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Изменение поведения EurekaLog
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]