Splunk AppDynamics

Best option for monitoring multiple processes in Node.js (PM2)

CommunityUser
Splunk Employee
Splunk Employee

We have a Node.js application that we monitor with AppDynamics using the "proxyless" method. It works fine, except that since each independent process that we fire up using PM2 shows up as a separate node or application in the dashboard. We want each server to show up as as single application, not as 4 applications.

From what I've read and determined, we have two options. I'd like some advice on the best course of action.

Option 1: Install and use a single Java AppDynamics proxy that all processes point to. We had some issues with the Java proxy so we went with the proxyless option, but we didn't try very hard to overcome whatever the issues were. This option seems like the most correct approach.

Option 2: Start our Node.js app and launch AppDynamics in the proxyless mode, and then programatically launch the other processes. I'm not a fan of this since PM2 manages our processes really nicely. I'm also not sure what AppDyanamics will do with 4 processes running inside of PM2. However this option allows us to do everything in software and not mess with our server templates.

If anyone has any comments that would guide us in our approach, I'd much appreciate it. Experimenting is time consuming.

Labels (1)
Tags (3)
0 Karma
1 Solution

Kyle_Furlong
Contributor

Hi Dustin,

Aggregating your Node.js processes into logical groupings is done with the "Application" and "Tier" concepts in AppDynamics. You seem to be working only with the "Node" concept so far. Typically we would have a Node per Node.js process, and those would be grouped into a single Tier at least for a single server, but usually for a group of servers with the same codebase. This Tier would be a member of a broader Application, with different codebases talking with each other to serve a common business need.

Does that topology/taxonomy make sense? Practically speaking, I think you just need to assign these Node.js processes to the same tier and app in AppD. You can accomplish this with the applicationName and tierName config values in Node.js.

Regards,

Kyle

View solution in original post

0 Karma

Kyle_Furlong
Contributor

Hi Dustin,

Aggregating your Node.js processes into logical groupings is done with the "Application" and "Tier" concepts in AppDynamics. You seem to be working only with the "Node" concept so far. Typically we would have a Node per Node.js process, and those would be grouped into a single Tier at least for a single server, but usually for a group of servers with the same codebase. This Tier would be a member of a broader Application, with different codebases talking with each other to serve a common business need.

Does that topology/taxonomy make sense? Practically speaking, I think you just need to assign these Node.js processes to the same tier and app in AppD. You can accomplish this with the applicationName and tierName config values in Node.js.

Regards,

Kyle

0 Karma

CommunityUser
Splunk Employee
Splunk Employee

Thanks Kyle. I think maybe the problem on our end is our definition of a node. I talked to our operations team and I think they have other opinions on how they want to organize things, and they'd prefer that a "node" be a physical server.

We also need to understand the licensing implications of breaking things up this way.

I appreciate your response. It sounds like we're on the right track from your perspective. As a developer, I personally like having my Node.js processes be seperate in AppDynamics since I think of them as separate and independent chunks.

0 Karma
Get Updates on the Splunk Community!

ATTENTION!! We’re MOVING (not really)

Hey, all! In an effort to keep this Slack workspace secure and also to make our new members' experience easy, ...

Splunk Admins: Build a Smarter Stack with These Must-See .conf25 Sessions

  Whether you're running a complex Splunk deployment or just getting your bearings as a new admin, .conf25 ...

AppDynamics Summer Webinars

This summer, our mighty AppDynamics team is cooking up some delicious content on YouTube Live to satiate your ...