I have deployed NodeJS application on Azure Web Apps. How to pass flags to NodeJS\'s Chrome V8 engine?
In my local machine I can do it easily while running the serve
You can do this either in iisnode.yml or in web.config. If you are deploying via git, you likely don't have those in your repo. You can get the default generated web.config by using Kudu Console and finding it under d:\home\site\wwwroot. By default, there is no iisnode.yml at all.
Just put the following line in the iisnode.yml:
nodeProcessCommandLine: node.exe --nouse-idle-notification --expose-gc --max-old-space-size=1024
Or if you use a full path to a version of Node, you'll need to quote it, e.g.
nodeProcessCommandLine: "D:\Program Files (x86)\nodejs\5.7.1\node.exe" --nouse-idle-notification --expose-gc --max-old-space-size=1024
Toward the end of the file, you'll see a commented out <iisnode> tag. Replace it by something like this:
<iisnode nodeProcessCommandLine="node.exe --nouse-idle-notification --expose-gc --max-old-space-size=1024"/>
iisnode.yml takes precedence over web.configmax-old-space-size value as that was blowing up when I tried, but that's orthogonal.Then with either file, you can commit them in your repo so it just works on deployment.