Dynamic Languages (Node.JS, Python, PHP, C/C++, Webserver Agent)

cancel
Showing results for 
Search instead for 
Did you mean: 

Unable to bundle Node.js with Appdynamics using Webpack (broken dependencies?)

SOLVED
Highlighted
Creator

Unable to bundle Node.js with Appdynamics using Webpack (broken dependencies?)

When trying to install the AppDynamics package for monitoring a Node.js application, our Webpack build process is not able to import a handful of dependencies. Specifically, the errors output are:

WARNING in ./node_modules/appdynamics/lib/core/agent.js 445:8-28
require.main.require is not supported by webpack.
@ ./node_modules/appdynamics/index.js 1:17-44
@ ./server.ts

ERROR in ./node_modules/appdynamics-zmq/lib/index.js
Module not found: Error: Can't resolve '../zmq' in '.../my-app/node_modules/appdynamics-zmq/lib'
@ ./node_modules/appdynamics-zmq/lib/index.js 24:10-27
@ ./node_modules/appdynamics-zmq/index.js
@ ./node_modules/appdynamics/lib/libproxy/proxy-transport.js
@ ./node_modules/appdynamics/lib/libproxy/libproxy.js
@ ./node_modules/appdynamics/lib/core/agent.js
@ ./node_modules/appdynamics/index.js
@ ./server.ts

ERROR in ./node_modules/appdynamics-libagent/index.js
Module not found: Error: Can't resolve './appd_libagent' in '.../my-app/node_modules/appdynamics-libagent'
@ ./node_modules/appdynamics-libagent/index.js 36:9-35
@ ./node_modules/appdynamics/lib/libagent/libagent-connector.js
@ ./node_modules/appdynamics/lib/core/agent.js
@ ./node_modules/appdynamics/index.js
@ ./server.ts

ERROR in ./node_modules/appdynamics-native/index.js
Module not found: Error: Can't resolve './appdynamics' in '.../my-app/node_modules/appdynamics-native'
@ ./node_modules/appdynamics-native/index.js 29:10-34
@ ./node_modules/appdynamics/lib/core/agent.js
@ ./node_modules/appdynamics/index.js
@ ./server.ts

ERROR in ./node_modules/appdynamics-protobuf/index.js
Module not found: Error: Can't resolve './protobuf_for_node' in '.../my-app/node_modules/appdynamics-protobuf'
@ ./node_modules/appdynamics-protobuf/index.js 29:10-40
@ ./node_modules/appdynamics/lib/libproxy/proxy-transport.js
@ ./node_modules/appdynamics/lib/libproxy/libproxy.js
@ ./node_modules/appdynamics/lib/core/agent.js
@ ./node_modules/appdynamics/index.js
@ ./server.ts

ERROR in ./node_modules/log4js/lib/appenders/hipchat.js
Module not found: Error: Can't resolve 'hipchat-notifier' in '.../my-app/node_modules/log4js/lib/appenders'
@ ./node_modules/log4js/lib/appenders/hipchat.js 3:14-41
@ ./node_modules/log4js/lib/appenders sync ^\.\/.*$
@ ./node_modules/log4js/lib/log4js.js
@ ./node_modules/appdynamics/lib/core/logger.js
@ ./node_modules/appdynamics/lib/core/agent.js
@ ./node_modules/appdynamics/index.js
@ ./server.ts

ERROR in ./node_modules/log4js/lib/appenders/loggly.js
Module not found: Error: Can't resolve 'loggly' in '.../node_modules/log4js/lib/appenders'
@ ./node_modules/log4js/lib/appenders/loggly.js 3:11-28
@ ./node_modules/log4js/lib/appenders sync ^\.\/.*$
@ ./node_modules/log4js/lib/log4js.js
@ ./node_modules/appdynamics/lib/core/logger.js
@ ./node_modules/appdynamics/lib/core/agent.js
@ ./node_modules/appdynamics/index.js
@ ./server.ts

ERROR in ./node_modules/log4js/lib/appenders/mailgun.js
Module not found: Error: Can't resolve 'mailgun-js' in '.../my-app/node_modules/log4js/lib/appenders'
@ ./node_modules/log4js/lib/appenders/mailgun.js 34:14-35
@ ./node_modules/log4js/lib/appenders sync ^\.\/.*$
@ ./node_modules/log4js/lib/log4js.js
@ ./node_modules/appdynamics/lib/core/logger.js
@ ./node_modules/appdynamics/lib/core/agent.js
@ ./node_modules/appdynamics/index.js
@ ./server.ts

ERROR in ./node_modules/log4js/lib/appenders/smtp.js
Module not found: Error: Can't resolve 'nodemailer' in '.../my-app/node_modules/log4js/lib/appenders'
@ ./node_modules/log4js/lib/appenders/smtp.js 4:13-34
@ ./node_modules/log4js/lib/appenders sync ^\.\/.*$
@ ./node_modules/log4js/lib/log4js.js
@ ./node_modules/appdynamics/lib/core/logger.js
@ ./node_modules/appdynamics/lib/core/agent.js
@ ./node_modules/appdynamics/index.js
@ ./server.ts

ERROR in ./node_modules/log4js/lib/appenders/slack.js
Module not found: Error: Can't resolve 'slack-node' in '.../node_modules/log4js/lib/appenders'
@ ./node_modules/log4js/lib/appenders/slack.js 2:12-33
@ ./node_modules/log4js/lib/appenders sync ^\.\/.*$
@ ./node_modules/log4js/lib/log4js.js
@ ./node_modules/appdynamics/lib/core/logger.js
@ ./node_modules/appdynamics/lib/core/agent.js
@ ./node_modules/appdynamics/index.js
@ ./server.ts

 

Our project is set up with:
- Webpack v4.29.0
- Node.js v11.0.0
- Appdynamics v4.5

The Appdynamics usage is at the top of our server file as:

// AppDynamics monitoring
require("appdynamics").profile({
controllerHostName: ***
controllerPort: 443,
controllerSslEnabled: true,
accountName: ****
accountAccessKey: ***
applicationName: ***
tierName: ***
nodeName: '01'
});

 

And our Webpack configuration is:

const path = require('path');
const webpack = require('webpack');

module.exports = {
entry: { server: './server.ts' },
resolve: { extensions: ['.js', '.ts'] },
target: 'node',
mode: 'development',
// this makes sure we include node_modules and other 3rd party libraries
externals: [/node_modules/],
output: {
path: path.join(__dirname, 'dist'),
filename: '[name].js'
},
module: {
rules: [{ test: /\.ts$/, loader: 'ts-loader' }]
},
plugins: [
]
};

 

So far we have tried downgrading the Webpack version, downgrading the Node environment to 10.15, and using other import methods for the AppDynamics package, but this seems like an issue internal to the Appdynamics library?

Has anyone experienced anything similar? Or had success using the Appdynamics node package with Webpack?

Tags (2)
Unable to bundle Node.js with Appdynamics using Webpack (broken dependencies?)
2 REPLIES 2
Employee

Re: Unable to bundle Node.js with Appdynamics using Webpack (broken dependencies?)

Hi Cody,

 

Could you try adding "appdynamics" to the externals array? Let me know if that helps.

 

Thanks and regards,

Kyle

Thanks,
Kyle Furlong, Technical Lead (C++ and Dynamic Languages)




Found something helpful? Click the Accept as Solution button to help others find answers faster.
Liked something? Click the Thumbs Up button.
Creator

Re: Unable to bundle Node.js with Appdynamics using Webpack (broken dependencies?)

Thank you Kyle, that did the trick!