Вход | Регистрация



[JavaScript] Как программно приостановить выполнение скрипта при ошибке Chrome?

[JavaScript] Как программно приостановить выполнение скрипта при ошибке Chrome?
Я
   D_Pavel
 
18.10.16 - 00:03
В IE есть удобная фишка, что при ошибке в скрипте выскакивает окно с кнопкой запустить отладчик.
В хроме в отладчике нашел только делать паузу при ошибке, но это работает только если DevTools уже открыт. Как отловить ошибку если отладчик спрятан?
 
 
   Asmody
 
1 - 18.10.16 - 00:08
А вы все алертами дебажите?
   Torquader
 
2 - 18.10.16 - 01:14
А не проще ли отладить по частям, а потом собрать воедино ?
   D_Pavel
 
3 - 18.10.16 - 01:30
(1) нет.

(2) Проще чем что?
   Torquader
 
4 - 18.10.16 - 01:39
(3) Чем пытаться отлаживать всё в куче - если каждая функция отлажена и возвращает то, что нужно, код будет работать, как нужно, а если в функциях ошибки, то они будут всплывать по мере расширения диапазона их входных значений - в итоговом коде все ситуации намного сложнее предусмотреть, чем при вызове отдельных функций.
   D_Pavel
 
5 - 18.10.16 - 16:50
(4) Это и так понятно. Но давайте не отклоняться от темы. Как все-таки заставить остановиться скрипт и вызвать отладчик?
Как советовал (1) Asmody через алерт не получится, потому что пока он висит в отладчик зайти нельзя. А когда его закрываешь скрипт выполняется дальше.
   Лефмихалыч
 
6 - 18.10.16 - 16:53
(0) может использовать для отладки IDE какой-нибудь, который умеет брэйкпоинты? NetBeans тот же, например...

(5) Asmody как раз не советует, а иронично порицает
   D_Pavel
 
7 - 18.10.16 - 16:54
Я уже придумал один дурацкий но рабочий способ (утро вечера мудренее).
Но может есть нормальный варик?
   Garykom
 
8 - 18.10.16 - 16:55
(5) Через плагины для барузеров и как правильно заметил в IDE уже давно все есть https://netbeans.org/kb/docs/webclient/html5-js-support_ru.html
   Garykom
 
9 - 18.10.16 - 16:55
   Garykom
 
10 - 18.10.16 - 16:56
(8) *браузеров
 
 Рекламное место пустует
   D_Pavel
 
11 - 18.10.16 - 16:56
(6) NetBeans умеет подключаться к хрому? Сомневаюсь. Нужно тратить время чтобы это выяснить.
Про Asmody в курсе.
   Мойдодыр
 
12 - 18.10.16 - 16:57
а что в хроме брейкпойнтов нет?
   Garykom
 
13 - 18.10.16 - 16:58
(11) А ты не сомневайся а попробуй
   D_Pavel
 
14 - 18.10.16 - 16:58
(12) Когда отладчик закрыт, "остановка по ошибке" не работает
   Лефмихалыч
 
15 - 18.10.16 - 16:58
(11) окуеть... Вообще-то умеет. Через расширение, вот такое:
https://i.imgur.com/mpVLypt.png
   Garykom
 
16 - 18.10.16 - 16:59
   D_Pavel
 
17 - 18.10.16 - 16:59
(13) (15) И что, его можно будет закрыть, и когда появится ошибка он запустится сам???
   Garykom
 
18 - 18.10.16 - 17:01
(17) Ты плохо заточенный или или прикидываешься? ;) привыкли блин к 1С-ке где из режима предприятия отладка вызывается...

Но в принципе да можно такое расширение сделать только науя?
   Лефмихалыч
 
19 - 18.10.16 - 17:04
(17) повторюсь: окуеть...
Ты в IDE запускаешь отладку и этот самый IDE запускает хром, который доходит до точки останова и управление возвращается в IDE
   Лефмихалыч
 
20 - 18.10.16 - 17:05
главное - не пробовать самому. Никогда. А то вдруг получится...

D_Pavel, а ты код пишешь в notepad.exe или в notepad++.exe?
   Мойдодыр
 
21 - 18.10.16 - 17:05
(20) так можно и встренным отладчиком воспользоваться
   D_Pavel
 
22 - 18.10.16 - 17:05
(19) Зачем тогда IDE если встроенный отладчик в хроме делает то же самое?
   Лефмихалыч
 
23 - 18.10.16 - 17:06
(22) затем, что встроенный этот твой отладчик не умеет (0)
   D_Pavel
 
24 - 18.10.16 - 17:07
(23) Ты в (19) писал что твой вариант тоже не умеет
   Лефмихалыч
 
25 - 18.10.16 - 17:09
(24) netbeans умеет остонавливаться по ошибке точно так же. Ты заускаешь отладку, он запускает хром и возвращает управление в netbeans, когда эксепшон стреляет. Как, в общем-то, любой отладчик
   D_Pavel
 
26 - 18.10.16 - 17:10
(25) Если для этого netbeans должен быть запущен, то этот вариант не подходит.
   D_Pavel
 
27 - 18.10.16 - 17:10
(25) >> Как, в общем-то, любой отладчик
Вот именно. Как и встроенных хромовский
   Лефмихалыч
 
28 - 18.10.16 - 17:11
Ты у клиента что ли хочешь в отладчике покопаться?
   D_Pavel
 
29 - 18.10.16 - 17:12
(28) Нет
   Garykom
 
30 - 18.10.16 - 17:12
(28) Он походу не понимает что js в продакшене (в браузере с сайта готового) это не тот js исходный код в котором можно легко покопаться ))
   Лефмихалыч
 
31 - 18.10.16 - 17:13
(30) да х/з. Но в одном ты прав - в этой ветке кто-то что-то не понимает.
   D_Pavel
 
32 - 18.10.16 - 17:15
(30) Лажанулся и пытаешься других очернить? Не по мужски.
   Garykom
 
33 - 18.10.16 - 17:17
(32) Пойми что js пользователи не отлаживают.

Отладкой JS занимаются программисты и обычно с IDE привычной и исходным кодом.
 
 
   Garykom
 
34 - 18.10.16 - 17:20
Сча в планах WebAssembly https://habrahabr.ru/post/261205/

Это будет скомпилированный машинный код (вместо js) в браузере а не как сча когда js (даже после обфускатора/сжатия) неудобно но можно поковырять.
   Лефмихалыч
 
35 - 18.10.16 - 17:20
(33) там, как я понял, вся разработка ведется в девтулзе, а про IDE ни кто не слышал...
   Garykom
 
36 - 18.10.16 - 17:23
(35) Ну тогда пусть наваяет расширение которое будет перехватывать и открывать для отладки в DevTools ))
   Лефмихалыч
 
37 - 18.10.16 - 17:24
(36) так для этого тем более IDE надо, а это не по вере: (22)
   D_Pavel
 
38 - 18.10.16 - 17:35
(33) Зачем повторяешься?
   D_Pavel
 
39 - 18.10.16 - 17:36
(34) Баян
   D_Pavel
 
40 - 18.10.16 - 17:38
(35) Кончай фантазировать в моей теме. Создай свою, и пиши там свои предположения. У меня тут вопрос решается. Не можешь ответить, не пиши.
   Мойдодыр
 
41 - 18.10.16 - 17:50
(40) Опиши свой юзеркейс
   D_Pavel
 
42 - 18.10.16 - 17:52
(41) Это что такое и зачем его описывать?
   Мойдодыр
 
43 - 18.10.16 - 17:54
Чтобы мы могли тебе помочь.
Откуда возникает потребность делать именно так.
Т.е по шагам с самого начала
   Лефмихалыч
 
44 - 18.10.16 - 17:54
еще одна коса на камень налетела...
   Мойдодыр
 
45 - 18.10.16 - 18:00
(43) То бишь очевидно что в лоб решения у твоей задачи нет.
нужно искать обходные пути. а для этого нужно (41)
   D_Pavel
 
46 - 18.10.16 - 18:13
(45) Не думаю что это чем-то поможет. Но смотри:
Есть виртуальные машины с очень маленьким объемом оперативки.
В них крутится мой скрипт, написанный под расширение для хрома tampermonkey.
Иногда (пару раз в неделю) могут возникать непонятные глюки, которые трудно отловить. В общем это не страшно, но часть данных при этом теряется, и хотелось бы посмотреть причину(ы) этих глюков.
Я сделал так что при возникновении ошибки скрипт отправляет мне сигнал об этом, с некоторыми данными, но по ним не видно причины ошибки и не возможно ее повторить.
Поэтому я хочу покопаться в отладчике.
Теперь самое главное: если подключить отладчик и оставить его, то через два-три дня он сжирает всю память.
   Garykom
 
47 - 18.10.16 - 18:17
(46) А нефиг накруткой рекламы заниматься...
   D_Pavel
 
48 - 18.10.16 - 18:18
(47) Так не занимайся
   D_Pavel
 
49 - 18.10.16 - 21:53
В общем проблема в том, что отладчик не может подключиться к работающему скрипту.
Как остановить скрипт чтобы подключить отладчик, а потом продолжить работу с того же места я не знаю.
 
 Рекламное место пустует
   D_Pavel
 
50 - 18.10.16 - 21:54
Причем эта проблема только в хроме. В IE и Edge все чотко работает.


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует