@instana/core
Advanced tools
Comparing version 1.68.2 to 1.68.3
{ | ||
"name": "@instana/core", | ||
"version": "1.68.2", | ||
"version": "1.68.3", | ||
"description": "Core library for Instana's Node.js packages", | ||
@@ -124,3 +124,3 @@ "main": "src/index.js", | ||
}, | ||
"gitHead": "9560fd236c4406a87ed377873f107cd01c1a5846" | ||
"gitHead": "fc2d673a99079f09c5ce63f0de24649d9715da1a" | ||
} |
@@ -11,2 +11,7 @@ 'use strict'; | ||
var logger; | ||
logger = require('../logger').getLogger('util/requireHook', function(newLogger) { | ||
logger = newLogger; | ||
}); | ||
exports.init = function() { | ||
@@ -52,4 +57,17 @@ Module._load = patchedModuleLoad; | ||
for (i = 0; i < applicableByModuleNameTransformers.length; i++) { | ||
cacheEntry.moduleExports = | ||
applicableByModuleNameTransformers[i](cacheEntry.moduleExports) || cacheEntry.moduleExports; | ||
var transformerFn = applicableByModuleNameTransformers[i]; | ||
if (typeof transformerFn === 'function') { | ||
cacheEntry.moduleExports = transformerFn(cacheEntry.moduleExports) || cacheEntry.moduleExports; | ||
} else { | ||
logger.error( | ||
'A requireHook invariant has been violated for module name %s, index %s. The transformer is not a function ' + | ||
'but of type "%s" (details: %s). The most likely cause is that something has messed with Node.js\' ' + | ||
'module cache. This can result in limited tracing and health check functionality (for example, missing ' + | ||
'calls in Instana).', | ||
moduleName, | ||
i, | ||
typeof transformerFn, | ||
transformerFn == null ? 'null/undefined' : transformerFn | ||
); | ||
} | ||
} | ||
@@ -56,0 +74,0 @@ cacheEntry.appliedByModuleNameTransformers.push(moduleName); |
6574
236455
75