Нужен совет как найти процесс из за которого зависают все остальные потоки

Поддержка
  • Приветствую!
    Такой вопрос, есть много потоков в них в нутри выполняются асинхронные функции и в нутри этих асинхронных функций выполняется код node.js.
    Где-то в ходе работы скорее всего из за встроенного node.js происходит зависание и из за этого зависают все остальные потоки.
    Сам BAS не висит и нагрузка на ПК не высокая при этом. Такое зависание длиться 1 минуту при этом все встроенные node.js в других потоках крашатся.
    через какое то время перезапускаются потоки из за ошибок и все работает.

    Как можно найти где именно происходит записание? код очень обширный.
    Спасибо за совет.

  • @mocard said in Нужен совет как найти процесс из за которого зависают все остальные потоки:

    этом все встроенные node.js в других потоках крашатся.

    Написать обработчик ошибок в самом node.js, или в BAS использовать обработчик ошибок тогда вы хотя бы будете понимать что он возращает. В BAS иногда бывает ошибка "тайм в аут во время выполнения..." возможно это связанно с этим. Значит иногда на сервер nodejs в переменных передаются не те значания которые он умеет обрабатывать, но как ошибка они не обрабатываются.

  • так в том то и дело что у меня много node.js в разных потоках свои используются

  • @mocard BAS обработчик ошибок, в переменной [[ERROR_ID]] по мему будет id кубика в котором выбросило ошибку, вы хотя бы найдете где именно и какое действие.

  • Так в том то и дело что когда зависает node.js в асинхронной функции из за него зависает весь скприт баса и потом я вижу в логе что крашатся все функции node.js которые работают в дргих потоках.

  • @mocard Он прямо зависает? Все равно первая ошибка должна быть, первая ошибка в первом упавшем потоке. Пишите обработчик ошибок в самом node.js. Пусть он проверяет что ему приходит. Наверняка у вас где-то строки, где-то объекты, где-то массивы. Хотя бы на это проверку.

  • Ок попробую. Спасибо.

  • @mocard said in Нужен совет как найти процесс из за которого зависают все остальные потоки:

    Так в том то и дело что когда зависает node.js в асинхронной функции из за него зависает весь скприт баса и потом я вижу в логе что крашатся все функции node.js которые работают в дргих потоках.

    Проверьте файл node_log.txt, в нём будет текст ошибки, который привёл к крашу процесса ноды

  • 0 Votes
    6 Posts
    815 Views
  • 0 Votes
    7 Posts
    989 Views
  • 0 Votes
    21 Posts
    3575 Views
  • 0 Votes
    14 Posts
    1988 Views
  • 0 Votes
    22 Posts
    4917 Views