Node.jsのSPAでlocalhostのときのみRollbarの通知をとめる
Rollbarめっちゃ便利です。本番稼働中やステージングで社内検収中にでたエラーのトラッキングできますし。 ただし、素のままで使うと開発中のエラーも通知されてしまいます。「こんなエラーいっぱい出てるよ!」 -> 「 […]
広告ここから
広告ここまで
目次
Rollbarめっちゃ便利です。本番稼働中やステージングで社内検収中にでたエラーのトラッキングできますし。
ただし、素のままで使うと開発中のエラーも通知されてしまいます。「こんなエラーいっぱい出てるよ!」 -> 「デバッグでわざとエラー出しとるんや!」みたいなケースも少なからず。
ということで、ローカルで実行してる時は通知を切っちゃいましょう。
localhostであることを判定する
windowから今いるページがlocalhostか否かを確認します。helper.js
というファイルでとりあえず保存しておきましょう。
export const location = typeof window === 'object' ? window.location : {};
export const host = typeof location === 'object' ? location.host : '';
export function isLocalhost(host = '') {
if (!host) return true;
if (/^localhost/.test(host)) return true;
if (/^http:\/\/localhost/.test(host)) return true;
if (/^https:\/\/localhost/.test(host)) return true;
return false;
}
その後、isLocalhost
を使ってRollbarのConfigを設定します。
const Rollbar = require('rollbar');
const { isLocalhost, host } = require('./helpers');
const rollbarConfig = {
enabled: !isLocalhost(host),
accessToken: 'YOUR_ROLLBAR_TOKEN',
};
export default new Rollbar(rollbarConfig);
これでwindow.location.host
がlocalhost
の時は、Rollbarがdisabledになります。