Skip to content

How to improve the profiling of NodeJS applications #418

@hrvacadaIM

Description

@hrvacadaIM

Hi.

First of all thank you for this nice tool. We have used the https://github.com/Granulate/gprofiler/blob/master/deploy/ecs/gprofiler_task_definition.json file to create task on our ECS clusters. We are getting some metrics in GProfiler Studio, but we would like to have also better insight into our own code and not just underlying code of NodeJS. Is there a possibility to get better insight into that part with passing some arguments? For example we found this option, but I am not sure, if this is needed at all or it can be passed to ECS gprofiler task:

NodeJS profiling options
--nodejs-mode: Controls which profiler is used for NodeJS.

  • none - (default) no profiler is used.
  • perf - augment the system profiler (perf) results with jitdump files generated by NodeJS. This requires running your node processes with --perf-prof (and for Node >= 10, with --interpreted-frames-native-stack). See this NodeJS page for more information.

Or, if it is possible to know from GProfiler Studio which part of the own code is causing the memory and cpu usage to increase. We have selected My code and set a filter for particular Service running in ECS, but that didn't give us any better insight in the issue.

I am thankful for any valuable insight.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions