Not a customer? Click the 'Start a free trial' link to begin a 30-day SaaS trial of our product and to join our community.
Existing Cisco AppDynamics customers should click the 'Sign In' button to authenticate to access the community
10-04-2017 03:32 PM - edited 10-04-2017 03:35 PM
Hi everyone,
I have been trying to get the node.js agent (v4.3.6) to connect to our company's test SaaS controller from within an alpine linux (v3.4) docker container. I keep getting proxy errors (please see attached file).
Any ideas around how can I debug this issue?
10-04-2017 03:39 PM
Hi Sayak,
Could you please try adding libagent: true to your profile settings block and restart the process? If it still does not work, please send over the new logs.
Regards,
Kyle
Thanks,
Kyle Furlong, Technical Lead (C++ and Dynamic Languages)
10-05-2017 09:09 AM
Now the container crashes right after it starts:
/usr/src/app # npm start > ol-build@1.0.0 start /usr/src/app > node server.js Segmentation fault npm ERR! code ELIFECYCLE npm ERR! errno 139 npm ERR! ol-build@1.0.0 start: `node server.js` npm ERR! Exit status 139 npm ERR! npm ERR! Failed at the ol-build@1.0.0 start script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2017-10-05T16_08_45_307Z-debug.log /usr/src/app # cat /root/.npm/_logs/2017-10-05T16_08_45_307Z-debug.log 0 info it worked if it ends with ok 1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'start' ] 2 info using npm@5.4.2 3 info using node@v8.6.0 4 verbose run-script [ 'prestart', 'start', 'poststart' ] 5 info lifecycle ol-build@1.0.0~prestart: ol-build@1.0.0 6 info lifecycle ol-build@1.0.0~start: ol-build@1.0.0 7 verbose lifecycle ol-build@1.0.0~start: unsafe-perm in lifecycle true 8 verbose lifecycle ol-build@1.0.0~start: PATH: /usr/lib/node_modules/npm/bin/node-gyp-bin:/usr/src/app/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 9 verbose lifecycle ol-build@1.0.0~start: CWD: /usr/src/app 10 silly lifecycle ol-build@1.0.0~start: Args: [ '-c', 'node server.js' ] 11 silly lifecycle ol-build@1.0.0~start: Returned: code: 139 signal: null 12 info lifecycle ol-build@1.0.0~start: Failed to exec start script 13 verbose stack Error: ol-build@1.0.0 start: `node server.js` 13 verbose stack Exit status 139 13 verbose stack at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:280:16) 13 verbose stack at emitTwo (events.js:125:13) 13 verbose stack at EventEmitter.emit (events.js:213:7) 13 verbose stack at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14) 13 verbose stack at emitTwo (events.js:125:13) 13 verbose stack at ChildProcess.emit (events.js:213:7) 13 verbose stack at maybeClose (internal/child_process.js:927:16) 13 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5) 14 verbose pkgid ol-build@1.0.0 15 verbose cwd /usr/src/app 16 verbose Linux 4.9.31-moby 17 verbose argv "/usr/bin/node" "/usr/bin/npm" "start" 18 verbose node v8.6.0 19 verbose npm v5.4.2 20 error code ELIFECYCLE 21 error errno 139 22 error ol-build@1.0.0 start: `node server.js` 22 error Exit status 139 23 error Failed at the ol-build@1.0.0 start script. 23 error This is probably not a problem with npm. There is likely additional logging output above. 24 verbose exit [ 139, true ]
10-05-2017 09:12 AM
Hi Sayak,
I was afraid of that. Unfortunately right now we don't have solid support for Alpine linux, due to their use of muslc instead of glibc. I would recommend trying out other options for your base container if possible. Others have had success with debian-slim.
Regards,
Kyle
Thanks,
Kyle Furlong, Technical Lead (C++ and Dynamic Languages)
10-05-2017 09:20 AM
My base image does have glibc:
apk --allow-untrusted add glibc-bin-2.25-r0.apk glibc-2.25-r0.apk
Is there a way I can perhaps, set this as the default library?
10-05-2017 09:24 AM
Hi Sayak,
Hmm, in that case let's try and get the non libagent mode working. The ENOENT errors typically mean there are permissions issues on the appdynamics files. If you run a chmod -R 755 node_modules/appdynamics that should clear it up. Remember to remove libagent:true and try again.
Regards,
Kyle
Thanks,
Kyle Furlong, Technical Lead (C++ and Dynamic Languages)
10-05-2017 12:36 PM
I still see the same error after running chmodding appdynamics* to 755.
10-05-2017 12:46 PM
Hi Sayak,
Could you provide the output of ls -l /usr/src/app/node_modules/appdynamics-proxy/proxy/runProxy run within the container?
Regards,
Kyle
Thanks,
Kyle Furlong, Technical Lead (C++ and Dynamic Languages)
10-05-2017 12:48 PM
-rwxr-xr-x 1 root root 6083 Aug 15 23:22 /usr/src/app/node_modules/appdynamics-proxy/proxy/runProxy
10-05-2017 12:51 PM
Also, I don't know if this is the issue:
/usr/src/app # ldd --version musl libc (x86_64) Version 1.1.16 Dynamic Program Loader Usage: ldd [options] [--] pathname
Perhaps if i can set glibc as default, it may solve the problem?
Thank you! Your submission has been received!
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form