我正在尝试添加newellegal代理到我的nuxt应用程序。我已经安装了所需的软件包,并添加了我的许可证密钥,并在newrelic.js
配置文件中设置了一个应用程序名称:
npm i newrelic
cp node_modules/newrelic/newrelic.js .
nano newrelic.js
我的问题是,我还需要在我的server.js
文件的顶部需要这个配置文件,由于这个文件是动态创建的,并放置在.nuxt
文件夹下,我不知道如何做到这一点。
在一个标准的nodejs应用程序中,我只需要将require('newrelic');
添加到启动脚本的顶部,或者在package.json
中添加一个新的脚本条目,如下所示:
"scripts": {
"dev": "node -r newrelic.js app.js"
}
3条答案
按热度按时间00jrzges1#
我最终使用
express
来解决这个问题:现在我们将
newrelic
加载到server/index.js
文件中,然后创建nuxt示例:我还更新了我的
package.json
中的script
部分:希望这能帮助任何面临同样问题的人。
cs7cruho2#
对于任何在这方面挣扎的人,我发现了一个简单得多的解决方案,使用nuxtmodules和钩子。
使用以下内容创建新文件
modules/newRelic.js
:在
nuxt.config.js
中导入模块别忘了安装newrelacy(
npm i newrelic
)并将newrelic.js
粘贴到应用程序的根文件夹中。qv7cva1a3#
在Node.js中,您可以在实际脚本启动之前 * 要求 * 一个具有
-r [module]
语法的模块(参见Node.js文档)。对于Nuxt,像这样修改你的npm运行脚本(而不是
nuxt start
):这样,Node会先加载NewRelic,然后加载Nuxt,并确保NewRelic能够检测所有依赖项。如果您让Nuxt先启动,NewRelic将无法识别某些依赖项,例如 express。
这是NewRelic推荐的,见他们的文档。