pinpoint-node-agent icon indicating copy to clipboard operation
pinpoint-node-agent copied to clipboard

关于express的插件

Open flashtintin opened this issue 7 years ago • 11 comments

大大你好,项目里自带有几个插件,包括express的,请问要如何启用?还是说默认就已经生效了,需要怎么配置吗?

flashtintin avatar Apr 10 '17 06:04 flashtintin

启动默认加载插件,目前pinpoint node agent 没有做插件的启动关闭配置,只要在plugins/core 或者plugins/user 下的插件,启动都会被默认加载

peaksnail avatar Apr 10 '17 08:04 peaksnail

好的,谢谢,那如何设置transactionId、parentSpanId等一系列信息呢?现在我的express项目连接的后端希望我传这些参数过去,我看到日志打印出来是null

flashtintin avatar Apr 10 '17 08:04 flashtintin

transactionId、parentSpanId 这些是agent自动生成,不需要设置,你只需要设置好 agent.id = node-app-id agent.application.name = node-app-name 即可,设置相关的可以参考README.md

peaksnail avatar Apr 10 '17 08:04 peaksnail

我下一个节点是一个http服务器,我要怎么才能把metadata传递给他呢?headers?body?

flashtintin avatar Apr 10 '17 08:04 flashtintin

最好是通过headers,将元数据传递给下一个节点, 可以参考下pinpoint node agent 插件开发,调用相关方法获取当前的transactionid和nextspanid以及相关数据的设置

同时可以了解下官网的相关插件开发说明naver pinpoing

peaksnail avatar Apr 10 '17 09:04 peaksnail

nodejs应用通过http调用一个java应用(用了java的agent),现在能把span信息传给java吗?我试了一下,pinpoint的web上只能看到nodejs应用,看不到nodejs调用java应用.请问这是怎么回事?怎么才能显示这个调用链呢?是应该用http模块,还是其他的模块吗?

jiaqifeng avatar Apr 13 '17 14:04 jiaqifeng

如果nodejs使用http和java应用通信的话,可以参考 sample4

具体需要做的就是,在nodejs端,需要在http headers添加以下字段 nextSpanId parentSpanId transactionId ENDPOINT ACCEPTORHOST REMOTEADDRESS 以便传给java应用,nodejs端也需要在span中存储以上字段

同时在java端,读取http headers以上字段,并记录下来

peaksnail avatar Apr 14 '17 06:04 peaksnail

我看现在的插件里没有对http发request的wrap啊.

jiaqifeng avatar Sep 21 '17 08:09 jiaqifeng

这里主要是在express或者koa上对相应的方法进行wrap,可以参考express插件中 wrap.js 文件

peaksnail avatar Oct 09 '17 02:10 peaksnail

@peaksnail 现在 koa 有对应的插件吗?

g0ne150 avatar Apr 03 '18 03:04 g0ne150

你好,express插件可以监控Router吗??

wunengbiao avatar Dec 05 '18 08:12 wunengbiao