loglevel-plugin-remote постоянно работает - PullRequest
0 голосов
/ 17 января 2020

У меня есть приложение React, которое использует loglevel-plugin-remote, а также пользовательскую конечную точку API для получения журналов для мониторинга ошибок.

Моя конфигурация журнала -

import log from 'loglevel';
import remote from 'loglevel-plugin-remote';

const customJSON = log => ({
  message: log.message,
  level: log.level.label,
  stacktrace: log.stacktrace
});

if (process.env.REACT_APP_SEND_LOGS === 'true') {
  const apiPath = `${process.env.REACT_APP_API_PATH}/log`;
  remote.apply(log, {
    format: customJSON,
    url: apiPath,
    stacktrace: {
      depth: 10
    }
  });
}

export default log;

И пример вызова -

import log from '../utils/logger';
...
  const getUserData = () => {
    return axios({url: userApi, method: 'GET', headers: authContext.authorizationHeaders })
      .then(response => response.data)
      .catch(error => {
        log.error(error);
      })
  };

Однако, когда журнал вызывается один раз, он будет непрерывно отправлять запросы в API пока я, наконец, не обновлю sh страницу.

1 Ответ

1 голос
/ 17 января 2020

Проблема, по-видимому, связана с loglevel-plugin-remote, который только проверяет, есть ли ответ API-кода 200 успеха, или он будет продолжать попытки бесконечно.

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

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