Финансы без пpоблем: Пеpеговоpный Пункт II (http://hdru.com/cgi-bin/pp2/YaBB.cgi)
>> Общий pаздел >> Анализ LOG
(Message started by: box_vma на 12.11.14 в 07:15:39)

Заголовок: Анализ LOG
Прислано пользователем box_vma на 12.11.14 в 07:15:39
Всем доброе время суток!

Подскажите, пожалуйста, как можно решить такую задачу. Одна из отчетных форм с определенными параметрами входит в бесконечный цикл, сервер, естественно, при этом "подвешивается". Из файла log информацию о переданных параметрах получить не смог по следующей причине. Пример файл LOG:

C> 07:39:54  12.11.2014
ANN·******·620A2J@@·R INLOOP

- искусственный бесконечный цикл

далее операторы работают, клиенты отсылают запросы серверу. Для примера два запроса:

C> 07:41:16  12.11.2014
MNM·*****·620K2KHH·R CH623FO
S> 0.00 "Q-S: ·ФИО· ·30·"

C> 07:41:16  12.11.2014
KUA·******·620E2EFV·R _PR_ ·6·
S> 0.00 13627


Естественно эти формы не будут выполнены, но эти записи будут постоянно записываться в log. Файл Log растет, запись которая "подвешивает" сервер, визуально теряется. Как ее найти?


Спасибо, с уважением
Владимир Антипин

Заголовок: Re: Анализ LOG
Прислано пользователем Vladimir на 13.11.14 в 16:32:36
Можно провести анализ по времени поступления запросов. Регулярно повторяющиеся запросы с короткими интервалами могут указывать на подвисание сервера. В начале обнаруженной последовательности и находится операция подвесившая сервер.

Заголовок: Re: Анализ LOG
Прислано пользователем Valery на 13.11.14 в 21:50:13

on 11/12/14 в 07:15:39, box_vma wrote:
Всем доброе время суток!

Подскажите, пожалуйста, как можно решить такую задачу. Одна из отчетных форм с определенными параметрами входит в бесконечный цикл, сервер, естественно, при этом "подвешивается". Из файла log информацию о переданных параметрах получить не смог по следующей причине. Пример файл LOG:

C> 07:39:54  12.11.2014
ANN·******·620A2J@@·R INLOOP

- искусственный бесконечный цикл

далее операторы работают, клиенты отсылают запросы серверу. Для примера два запроса:

C> 07:41:16  12.11.2014
MNM·*****·620K2KHH·R CH623FO
S> 0.00 "Q-S: ·ФИО· ·30·"

C> 07:41:16  12.11.2014
KUA·******·620E2EFV·R _PR_ ·6·
S> 0.00 13627

Естественно эти формы не будут выполнены, но эти записи будут постоянно записываться в log. Файл Log растет, запись которая "подвешивает" сервер, визуально теряется. Как ее найти?

Если вопрос, как найти форму с ошибкой, то код подвешенной  формы виден на диаграмме сервера...   В Вашем примере это INLOOP.  В ее теле и надо искать ошибку... При выполнении "зацикливавшейся" формы сервер может не отражать результат выполнения этой формы в log. Или я не понял вопрос. :(

Заголовок: Re: Анализ LOG
Прислано пользователем box_vma на 14.11.14 в 16:53:43
Это пример, в котором inloop явно "весит" сервер. А реально после inloop (источника зависания) множество других неисполненных запросов. Визуально найти источник сложно. Я понимаю, что нужно найти последний без S>... Может кто-нибудь имеет какие-то наработки по анализу LOG-файла?
И еще, в статистике сервера указаны запросы с худшими временами обработки. Время выполнения, указанное в статистике для запроса R, не мог найти в LOG. Правильно ли я понимаю, что для статистики сервера учитывается время от поступления запроса до момента его выполнения? (то есть в это время форма могла "стоять в очереди), а  в LOG указано непосредственно количество времени, потребовавшееся для выполнения формы?
Ранее не имел потребности столь внимательного изучения LOG файла, а сейчас ищу способы оптимизации кода, так как критична любая секунда.

Спасибо, с уважением
В. Антипин

Заголовок: Re: Анализ LOG
Прислано пользователем Valery на 14.11.14 в 22:36:21

on 11/14/14 в 16:53:43, box_vma wrote:
Это пример, в котором inloop явно "весит" сервер. А реально после inloop (источника зависания) множество других неисполненных запросов. Визуально найти источник сложно. Я понимаю, что нужно найти последний без S>... Может кто-нибудь имеет какие-то наработки по анализу LOG-файла?

Что-то было раньше, ещё на старом форуме.  Даже был вариант восстановления операций по данным лога.  Попробуйте поискать:  
http://hdru.com/wwwboard/index.htm


Заголовок: Re: Анализ LOG
Прислано пользователем Boris, Kiev. на 20.11.14 в 18:42:38

on 11/14/14 в 16:53:43, box_vma wrote:
Ранее не имел потребности столь внимательного изучения LOG файла, а сейчас ищу способы оптимизации кода, так как критична любая секунда.

Спасибо, с уважением
В. Антипин



Log хорошая штука, но вовсе не для оптимизации кода.
Вы, вероятно, забыли про наш уникальный профилер?
Кто знаком поглубже с другими учетными платформами скажите, есть ли там  аналогичный инструмент или нет?



Заголовок: Re: Анализ LOG
Прислано пользователем Alexander_Kiev на 23.11.14 в 15:39:16

on 11/20/14 в 18:42:38, Boris, Kiev. wrote:
оптимизации кода.
Вы, вероятно, забыли про наш уникальный профилер?
Кто знаком поглубже с другими учетными платформами скажите, есть ли там  аналогичный инструмент или нет?
Профилер это инструмент VM. Конечно, этот инструмент весьма распространен. Я уже второй десяток лет пользуюсь интегрированной средой разработки NetBeans, а вот только недавно обратил внимание на наличие профилера. Оно и так все летает, а вот недавно встала задача, воспроизвести отчет оборачиваемости ТМЦ. Периодом одного года не обойдешся. Такие типы мульти годовых отчетов и раньше делались, но они довольно трудоемки. Результат каждого года расчитывается на своем сервере и консолидируются тоже сами результаты. На этот раз, настроился решить вопрос координально и реализовал механизм затягивания ленты фактов(да, у меня все также как в старом добром ФБП :)) c всех серверов прошлых годов. Здесь и пошли проблемы. Самое узкое место - переход информационного потока ч/з сокеты приложений, плюс сильный удар по памяти сервера текущего года. В общем, сервер начал валится либо по нехватки памяти, либо по таймауту от клиента. Оптимизация наполнения потока в принципе помогла выйти на границу допустимости, но ситуация оставалась стремноватой. Пришлось отказаться от предварительного сбора лент всех годов и перейти к принципу непосредственной обработки фактов с циклом по годичным серверам. Все эти недельные мучения сопровождалась растановкой временных меток в самом коде. Соственно по теме, современная среда разработки настолько насыщена функциональностью, что ее даже не пытаешся охватить сознанием. Ну как эксель, мы его используем на 15-20% его возможностей. Так и я вспомнил о профилере, после того как отмучился. А профилер, при близком знакомстве оказался просто бомбой. Там и графика загруженности ядер проца и состояние памяти и каждый поток с разворотом до умопомрачительной детализации процесов и состояний.
P.S. Намедни, самый активный из моих подопечных снарядил новую машину для сервера. Давно не интересовался производительностью, где то под 500,000 оп/с.  помню было в последний раз 3-4 года назад. Сейчас давит за три миллиона, 100 mc перерасчет года. Вот проклятые буржуи, как я их ненавижу :)    

Заголовок: Re: Анализ LOG
Прислано пользователем Boris, Kiev. на 25.11.14 в 08:34:47

on 11/23/14 в 15:39:16, Alexander_Kiev wrote:
Профилер это инструмент VM.
Судьбоносное определение.:)

Quote:
Конечно, этот инструмент весьма распространен.

Ещё раз, пожалуйста, уточни, какие из известных тебе учетных платформ(Это отсюда https://ru.wikipedia.org/wiki/%D0%91%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80%D1%81%D0%BA%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0 Примеры систем для малых и средних предприятийВ классе систем для малых и средних предприятий распространение получили такие системы, как 1С:Предприятие, БЭСТ, Парус. Современные версии данных программ включают модули для автоматизации учёта и управления в различных отраслях деятельности, что позволяет формально отнести их к классу ERP)
имеют в своем инструментарии не какой-то, а свой собственный, да, расшифровывающий до атомов мало кому понятных, но тем не менее поработать над своим алгоритмом прямо здесь и сразу - это очень удобно.
Можно сказать, что тот настройщик, который не заглядывал профилером в свои формы, тот не желает, или времени жалко, или его пока всё устраивает и без этого анализа, который часто приводит к существенному совершенствованию формы.

Заголовок: Re: Анализ LOG
Прислано пользователем Alexander_Kiev на 27.11.14 в 07:56:31

on 11/25/14 в 08:34:47, Boris, Kiev. wrote:
Ещё раз, пожалуйста, уточни, какие из известных тебе учетных платформ

Затрудняюсь с определением отношения к учетности платформ. Это платформа пригодная к созданию приложений для учета или платформа специализированная на задачах учета и ими ограниченная? Для первых мы будем рассматривать просто наличие профилера, к вторым, ограничение задач областью учета, будем использовать как условие отбора из первых. Таких(одновременно для двух условий) может оказаться очень мало.

Заголовок: Re: Анализ LOG
Прислано пользователем Boris, Kiev. на 27.11.14 в 08:25:28

on 11/27/14 в 07:56:31, Alexander_Kiev wrote:
Таких(одновременно для двух условий) может оказаться очень мало.

"Отож", а точнее, их просто нет, кроме нашей ;)



Powered by YaBB 1 Gold - SP 1.3.2!
Forum software copyright й 2000-2004 Yet another Bulletin Board