|
|
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
Проблема возникла с данной технологией логгирования. Периодически сваливается процесс с ошибкой Код: sql 1. Сугубо путем экспериментов выяснил, что вероятность падения зависит от интервала между записями в лог. Сделал непрервыную запись - падает почти сразу; сделал интервал в секунду - пока вот висит процесс и капают записи. При этом я файл сам мониторю в онлайне через LogExpert. Если честно, впервые сталкиваюсь с такой проблемой на практике. По данной ошибке сеть мало что дала, потому вопрос к знатокам: 1) Можно ли что-то сделать с TMS логгером по части данной проблемы? 2) Может, стоить использовать другое средство логгирования. Что-то порекомендуете, желательно, чтобы умело безглючно выводить логгирование нескольких потоков в один файл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2017, 18:23:33 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
я делаю на каждый поток свой файл лога, чтобы избежать проблем и потом не разгребать мешанину данных из разных потоков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2017, 20:44:26 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
В документанции к этому логгеру написано, что он thread safe... Так что может где-то в другом месте косяк? Например, с тем же LogExpert'ом, который для чтения временно блокирует файл? Или файл большой и его кривой антивирус долго проверяет при каждой записи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2017, 21:24:46 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
ktv Что-то порекомендуете, желательно, чтобы умело безглючно выводить логгирование нескольких потоков в один файл? Я использую mutex + writeln, несколько процессов (и потоков) пишут в файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2017, 22:21:26 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
Из логгеров ничего навороченнее SmartInspect не видел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 11:08:52 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
В общем, победил изменением одного из исходников TMS логгера TMSLoggingUtils.pas путем добавления флага fmShareDenyNone в оба вызова конструктора TFileStream.Create , которые изначально были без них. Конечный код TTMSLoggerUtils.AppendStream: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 12:58:54 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
ktv, вот тупые тмс-овцы, не могли догадаться что в файл можно одновременно писать из разных потоков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 13:05:22 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
ktvЧто-то порекомендуете, желательно, чтобы умело безглючно выводить логгирование нескольких потоков в один файл? wlog.pas https://github.com/wadman/wthread ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 15:12:49 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
Если нужно отлаживать в процессе разработки, то весьма неплох по возможностям штатный CodeSite ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 16:14:07 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
white_nigger, т.е. в designtime? При не запущенном приложении? Или как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 16:32:28 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
X11т.е. в designtime? При не запущенном приложении? Это как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 16:35:26 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
X11Или как?До релиза. В процессе поиска багов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 16:43:01 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
У CodeSite'а вообще отдельный процесс висит, который принимает все логи в порядке очереди и потом их передает/сохраняет куда надо. Так что там проблем с многопоточностью по определению быть не должно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 16:54:33 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
asviridenkovktv, вот тупые тмс-овцы, не могли догадаться что в файл можно одновременно писать из разных потоков. Сарказм понятен, непонятно как за такое ещё и денег хотят (много). Отдельный поток с монопольным доступом к файлу и синхронизированная запись из других потоков?.. Не, зачем, можно ведь открыть файл, записать и закрыть. А если он уже открыт, то зачем ждать - можно же исключение кинуть. Пипл хавает (С) :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 19:30:47 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_X11Или как?До релиза. В процессе поиска баговДа JaDiУ CodeSite'а вообще отдельный процесс висит, который принимает все логи в порядке очереди и потом их передает/сохраняет куда надо. Так что там проблем с многопоточностью по определению быть не должно.Помимо этого дофига плюшек. Возможность структурирования, сравнение состояния объектов и тд. Можно найти видео где это хорошо показано ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2017, 20:09:11 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
white_nigger_Vasilisk_пропущено... До релиза. В процессе поиска баговДабаги есть всегда, можно даже и в продакшне ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2017, 13:15:14 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
schiиспользую mutex + writeln, несколько процессов (и потоков) пишут в файлиз разных процессов в один мне кажется не приходится а чтобы потоки одного развести (и заодно не тупить вдруг на записи) юзаю lf-очередь и отдельный поток-писатель ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2017, 13:21:43 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
если из разных потоков струячить всё в один файл, как потом разбираться в этой мешанине ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2017, 13:38:55 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
defecatorесли из разных потоков струячить всё в один файл, как потом разбираться в этой мешанине ? Например также, как в виндовом Event log ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2017, 13:45:35 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
vavanschiиспользую mutex + writeln, несколько процессов (и потоков) пишут в файлиз разных процессов в один мне кажется не приходится а чтобы потоки одного развести (и заодно не тупить вдруг на записи) юзаю lf-очередь и отдельный поток-писатель В моем случае мне важна полнота (у меня некий отладочный протокол), поэтому чем проще, тем лучше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2017, 13:47:01 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
schidefecatorесли из разных потоков струячить всё в один файл, как потом разбираться в этой мешанине ? Например также, как в виндовом Event log а я в разные файлы пишу, один файл - один поток. Потом проще, чем разгребать "как в виндовом Event log" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2017, 13:47:58 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
defecatorесли из разных потоков струячить всё в один файл, как потом разбираться в этой мешанине ?например указывать идентификатор потока или чего угодно еще defecatorя в разные файлы пишуну я тоже в одном приложении несколько независимых лог-файлов веду но разделение логическое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2017, 14:25:31 |
|
||
|
TMS logger
|
|||
|---|---|---|---|
|
#18+
schiВ моем случае мне важна полнота (у меня некий отладочный протокол), поэтому чем проще, тем лучшенепонятно как одно связано с другим хотя достоинства принципа самого по себе конечно широко известны ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2017, 14:32:06 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39532177&tid=2041745]: |
0ms |
get settings: |
5ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
214ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 193ms |
| total: | 493ms |

| 0 / 0 |
