bugfix: handle error if we cannot get our own ipv4

This commit is contained in:
Dave Horton
2022-04-21 19:09:23 -04:00
parent 36c97e9562
commit de9f2ce5ca

View File

@@ -1,6 +1,5 @@
const Mrf = require('drachtio-fsmrf'); const Mrf = require('drachtio-fsmrf');
const ip = require('ip'); const ip = require('ip');
const localIp = ip.address();
const PORT = process.env.HTTP_PORT || 3000; const PORT = process.env.HTTP_PORT || 3000;
const assert = require('assert'); const assert = require('assert');
@@ -167,6 +166,13 @@ function installSrfLocals(srf, logger) {
commitInterval: 'test' === process.env.NODE_ENV ? 7 : 20 commitInterval: 'test' === process.env.NODE_ENV ? 7 : 20
}); });
let localIp;
try {
localIp = ip.address();
} catch (err) {
logger.error({err}, 'installSrfLocals - error detecting local ipv4 address');
}
srf.locals = {...srf.locals, srf.locals = {...srf.locals,
dbHelpers: { dbHelpers: {
client, client,
@@ -201,8 +207,6 @@ function installSrfLocals(srf, logger) {
getListPosition getListPosition
}, },
parentLogger: logger, parentLogger: logger,
ipv4: localIp,
serviceUrl: `http://${localIp}:${PORT}`,
getSBC, getSBC,
getSmpp: () => { getSmpp: () => {
return process.env.SMPP_URL; return process.env.SMPP_URL;
@@ -213,6 +217,11 @@ function installSrfLocals(srf, logger) {
writeAlerts, writeAlerts,
AlertType AlertType
}; };
if (localIp) {
srf.locals.ipv4 = localIp;
srf.locals.serviceUrl = `http://${localIp}:${PORT}`;
}
} }
module.exports = installSrfLocals; module.exports = installSrfLocals;