Как расширить AppInsights JavaScript SDK Регистрация ошибок для строкового преобразования - PullRequest
0 голосов
/ 08 февраля 2019

У нас есть информация о приложении, подключенная к нашему угловому приложению.Все ошибки, зарегистрированные в приложении, представляют собой некоторую форму представлений [object object] или [object ErrorNode] или другого объекта toString ().

Я обнаружил эту статью https://github.com/Microsoft/ApplicationInsights-JS/wiki/FAQ#im-seeing-a-lot-of-uncaught-object-object-errors-in-application-insights-in-azure-portal, указывающую, что JS SDK предполагает, что тамявляется message свойством ошибки, и если нет, то оно будет выдавать ошибку, которая обычно приводит к бесполезному представлению.Статья и связанные статьи указывают на это как на истину, но не предоставляют никакого способа изменить это поведение или обойти его.Мы бы предпочли JSON.stringify ошибку вместо toString ошибки или иметь возможность указать форматер, который может принимать неизвестный тип ошибки и расширять его по желанию.Есть даже проблемы, которые были открыты некоторое время здесь https://github.com/Microsoft/ApplicationInsights-JS/issues/363.

Мы рассматриваем возможность добавления еще одного обратного вызова window.onerror, который ищет эти типы ошибок и отправляет трассировку для понимания приложения с помощью пользовательского расширенияузел ошибки.Однако это не будет связано с исходным запросом и будет просто смежной ошибкой.Нам нужно обрабатывать как сбои зависимостей, так и сбои не зависимостей, которые выдают ошибки без свойства message.

1 Ответ

0 голосов
/ 10 февраля 2019

Вы должны отключить автоматическое отслеживание исключений (см. aiConfig.disableExceptionTracking) и вместо этого выполнить собственное отслеживание.Код того, как происходят подключения по умолчанию, находится в репозитории GitHub в методе _onerror , насколько я могу сказать.

еще лучше, вы могли бы решить проблему в ApplicationInsights-js GitHub repo , и вы могли бы действительно внести изменения обратно в sdk, чтобы каждый мог получить выгоду?

, но лучшее место, чтобы опубликовать это, было бы в GitHub repo для приложения insights javascript sdk:

https://github.com/Microsoft/ApplicationInsights-js/issues

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...