Автоматическая обратная связь на ошибке JavaScript

Вы должны денормализовать данные. Добавить поле в Tag для dateLastUsed и отсортировать по нему. Обновите это, когда сообщение помечено. В зависимости от требований к вашему продукту вам также может потребоваться обновить его, когда тег будет удален из публикации. В этом случае вам нужно будет просмотреть все сообщения тега и назначить dateLastUsed самых последних из этих сообщений.

Также вы сказали: «... для каждого извлеченного тега выполните дополнительное извлечение его сообщений». Вы НИКОГДА не должны получать сообщения тега или теги сообщения, но ВСЕГДА используйте связь. Отношения на порядки быстрее.

14
задан Gumbo 13 February 2009 в 17:59
поделиться

5 ответов

Править: Я неправильно понял Ваш вопрос первоначально, это должно работать:

Также отметьте, это должно пойти ПЕРЕД любым JavaScript, который мог бы вызвать ошибки.

window.onerror = function(msg,u,l)
{
    txt ="Error: " + msg + "\n";
    txt+="URL: " + u + "\n";
    txt+="Line: " + l + "\n\n";
    //Insert AJAX call that passes data (txt) to server-side script
    return true;
};

Что касается синтаксических ошибок, Вам не повезло. JavaScript просто умирает, когда существует синтаксическая ошибка. Нет никакого способа обработать его вообще.

16
ответ дан 1 December 2019 в 09:13
поделиться

Я не уверен в синтаксических ошибках, но возможно зафиксировать js ошибки с помощью window.onerror событие. Поиск "регистрирующихся ошибок в JavaScript" в Google дает Вам много результатов...

Вход ошибок JavaScript На ASP.NET: http://james.newtonking.com/archive/2006/05/02/Logging-JavaScript-Errors-To-ASP.NET.aspx (К сожалению, связь для загрузки в сообщении разорвана).

Вход клиентских ошибок JavaScript к серверу: http://www.codeproject.com/KB/ajax/logclientsidejserrors2srv.aspx

Уведомления об ошибке JavaScript: http://www.thecodepage.com/post/JavaScript-Error-Notifications.aspx

4
ответ дан 1 December 2019 в 09:13
поделиться

Одна техника состоит в том, чтобы использовать Ajax для входа ошибки JavaScript

Каждая ошибка JavaScript может быть захвачена в window.onerror событии. Мы можем возвратить TRUE или FALSE, таким образом, мы можем выбрать, если пользователь должен видеть нормальное диалоговое окно ошибки JavaScript. Этот сценарий, в очень маловероятном событии ошибки JavaScript, соберет информацию об ошибке и отправит httprequest в страницу, которая зарегистрирует ошибку JavaScript к базе данных.

9
ответ дан 1 December 2019 в 09:13
поделиться

window.onerror = MyFunction (сообщение, URL, строка);

мы открываемся окно с деталями ошибки, тип браузера (т.е. navigator.userAgent), и т.д. все в полях, отмеченных ТОЛЬКО ДЛЯ ЧТЕНИЯ и привлекательный пользователь для Представления их.

У нас есть флажок "Do not show this again", который хранится в сеансовых куки - поэтому, если они продолжают получать ошибки, чем может отключить Всплывающее окно.

Несмотря на то, что мы думали, что это было "хорошо прохладно", мы получаем очень немного отчетов - и я не убежден, что это вызвано тем, что мы рядом для обнуления ошибок периода выполнения!

0
ответ дан 1 December 2019 в 09:13
поделиться

Вероятно, лучше всего отправить только одно сообщение об ошибке на страницу. Если Вы получаете ошибку на повторяющемся таймере, или сам Ajax рекурсивно называет ошибку, можно закончить тем, что заполнили журнал бесполезным спамом.

Кроме того, быть готовым получить неразрешимые ошибки, вызванные вещами как:

  • надувательство прокси безопасности с Вашим кодом
  • сценарии от заблокированных сайтов
  • неважные хромовые ошибки браузера от расширений
  • Мобильный IE, худший браузер в мире
0
ответ дан 1 December 2019 в 09:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: