# Monitor Nodejs process stats using metricbeat

**URL:** <https://discuss.elastic.co/t/monitor-nodejs-process-stats-using-metricbeat/112386>\
**Category:** Beats\
**Tags:** metricbeat\
**Created:** [December 19, 2017, 9:02am UTC](https://discuss.elastic.co/t/monitor-nodejs-process-stats-using-metricbeat/112386 "2017-12-19T09:02:15Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Varun\_Karuturi](https://avatars.discourse-cdn.com/v4/letter/v/4bbf92/32.png) [@Varun\_Karuturi](https://discuss.elastic.co/u/Varun_Karuturi)\
**Post date:** [December 19, 2017, 9:02am UTC](https://discuss.elastic.co/t/monitor-nodejs-process-stats-using-metricbeat/112386/1 "2017-12-19T09:02:15Z")

</div>

Hi,

I have few nodejs processes running in my machine, Could you please help me out on how to monitor the nodejs process using metricbeat.

I basically need to monitor the cpu, memory, etc for each node process. Please give me suggestions or also let me know if there are any other ways to monitor these

---

<div class="post-metadata">

**Author:** ![pierhugues](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/pierhugues/32/48383_2.png) [@pierhugues](https://discuss.elastic.co/u/pierhugues)\
**Post date:** [December 19, 2017, 8:37pm UTC](https://discuss.elastic.co/t/monitor-nodejs-process-stats-using-metricbeat/112386/2 "2017-12-19T20:37:38Z")

</div>

Hello,

You can [filter process](https://www.elastic.co/guide/en/beats/metricbeat/current/metricbeat-metricset-system-process.html#_configuration_10) that you want to monitor in metricbeat,

```auto
metricbeat.modules:
- module: system
  metricsets: ["process"]
  processes: ['.*']

```

The previous example will grab information for all the processes, but you could use a more strict regular expression like this "nodejs.\*", or you can look at the documentation [enhanced filtering options](https://www.elastic.co/guide/en/beats/metricbeat/current/filtering-and-enhancing-data.html) which will give you even better control.

Also if theses nodejs are web service, you might want to try the [apm-server](https://www.elastic.co/solutions/apm) this will give you insights into your requests/response code.

---

<div class="post-metadata">

**Author:** ![Varun\_Karuturi](https://avatars.discourse-cdn.com/v4/letter/v/4bbf92/32.png) [@Varun\_Karuturi](https://discuss.elastic.co/u/Varun_Karuturi)\
**Post date:** [January 8, 2018, 9:40am UTC](https://discuss.elastic.co/t/monitor-nodejs-process-stats-using-metricbeat/112386/3 "2018-01-08T09:40:27Z")

</div>

thanks for the reply.

But the question here is that we are able to get the system metrics(CPU, Load, Memory, etc.,) for all the node services but we want to capture the system metrics(CPU, Load, Memory, etc.,) individually for each process like the way we do it in Icinga or Nagios

We tried with the below syntax but we are unable to monitor the individual node process

metricbeat.modules:

- module: system  
metricsets: ["process"]  
processes: ['node._']  
input.field.with.regexp:  
 [system.process.name](http://system.process.name): ['foo._']

Please provide your inputs on how to monitor each node process on the Kibana dashboard

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [February 5, 2018, 9:40am UTC](https://discuss.elastic.co/t/monitor-nodejs-process-stats-using-metricbeat/112386/4 "2018-02-05T09:40:39Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
