以SkyWalking方式接入
更新時間 2024-11-12 10:34:39
最近更新時間: 2024-11-12 10:34:39
分享文章
在監控Node.js應用之前,您需要通過客戶端將應用數據上報至APM服務端。本文介紹了如何通過SkyWalking將Node.js應用接入APM。
前提條件
完成vpce接入。
接入步驟
1.引入相關依賴。
npm?install?--save?express?node-fetch?skywalking-backend-js
2.查看接入點信息。
應用列表的接入指引會根據您所在資源池提供“通過 HTTP 上報數據”和“通過 gRPC 上報數據”的ENDPOINT(天翼云vpc網絡接入點)、鑒權TOKEN信息。
3.server 端上報示例。
編寫以下 server 端代碼,保存為 nodejs-demo-server-skywalking.js 文件。
- 請將url和token替換成第2步中獲取的接入點信息。
//?nodejs-demo-server-skywalking.js
const?express?=?require('express')
const?app?=?express()
const?port?=?3000
app.get('/',?(req,?res)?=>?{
??console.log('received?request')
??res.send('Hello?World!')
})
app.listen(port,?()?=>?{
??console.log(`server?running?at?//localhost:${port}`)
})
const?{default:?agent}?=?require('skywalking-backend-js')
agent.start({
??serviceName:?'nodejs-demo-server-skywalking',
??collectorAddress:?'<url>',
??authorization:?'Bearer?<token>',
??sqlTraceParameters:?true,
})
運行 server 端代碼。
node?./nodejs-demo-server-skywalking.js
4.client端上報示例。
編寫以下 client 端代碼,保存為 nodejs-demo-client-skywalking.js 文件。
//?nodejs-demo-client-skywalking.js
import('node-fetch').then(async?({?default:?fetch?})?=>?{
??const?response?=?await?fetch('//localhost:3000/')
??const?data?=?await?response.text()
??console.log(data)
})
運行 client 端代碼。
node?./nodejs-demo-client-skywalking.js
5.通過以上步驟即可在控制臺查看接入的Node.js應用。