Add New Relic Node.js APM monitoring to backend
- Install newrelic package for server-side APM - Create newrelic.js configuration with distributed tracing enabled - Update npm scripts to preload agent via -r flag for ES modules - Correlates with existing browser agent for end-to-end tracing Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
3155cc930f
commit
d9cd0692b5
36
newrelic.js
Normal file
36
newrelic.js
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
'use strict'
|
||||||
|
|
||||||
|
/**
|
||||||
|
* New Relic Node.js APM Configuration
|
||||||
|
*
|
||||||
|
* This file configures the New Relic agent for backend monitoring.
|
||||||
|
* Requires NEW_RELIC_LICENSE_KEY environment variable to be set.
|
||||||
|
*
|
||||||
|
* Distributed tracing is enabled to correlate with browser agent traces.
|
||||||
|
*/
|
||||||
|
|
||||||
|
exports.config = {
|
||||||
|
app_name: ['dasfad'],
|
||||||
|
license_key: process.env.NEW_RELIC_KEY,
|
||||||
|
distributed_tracing: {
|
||||||
|
enabled: true
|
||||||
|
},
|
||||||
|
logging: {
|
||||||
|
level: 'info'
|
||||||
|
},
|
||||||
|
allow_all_headers: true,
|
||||||
|
attributes: {
|
||||||
|
exclude: [
|
||||||
|
'request.headers.cookie',
|
||||||
|
'request.headers.authorization',
|
||||||
|
'request.headers.proxyAuthorization',
|
||||||
|
'request.headers.setCookie*',
|
||||||
|
'request.headers.x*',
|
||||||
|
'response.headers.cookie',
|
||||||
|
'response.headers.authorization',
|
||||||
|
'response.headers.proxyAuthorization',
|
||||||
|
'response.headers.setCookie*',
|
||||||
|
'response.headers.x*'
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
1665
package-lock.json
generated
1665
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
11
package.json
11
package.json
@ -1,18 +1,18 @@
|
|||||||
{
|
{
|
||||||
"name": "immersive",
|
"name": "immersive",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "0.0.8-47",
|
"version": "0.0.8-48",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=18.0.0"
|
"node": ">=18.0.0"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "node server.js",
|
"dev": "node -r newrelic server.js",
|
||||||
"test": "vitest",
|
"test": "vitest",
|
||||||
"build": "node versionBump.js && vite build",
|
"build": "node versionBump.js && vite build",
|
||||||
"start": "NODE_ENV=production node server.js",
|
"start": "NODE_ENV=production node -r newrelic server.js",
|
||||||
"start:api": "API_ONLY=true node server.js",
|
"start:api": "API_ONLY=true node -r newrelic server.js",
|
||||||
"socket": "node server/server.js",
|
"socket": "node server/server.js",
|
||||||
"serverBuild": "cd server && tsc",
|
"serverBuild": "cd server && tsc",
|
||||||
"havok": "cp ./node_modules/@babylonjs/havok/lib/esm/HavokPhysics.wasm ./node_modules/.vite/deps"
|
"havok": "cp ./node_modules/@babylonjs/havok/lib/esm/HavokPhysics.wasm ./node_modules/.vite/deps"
|
||||||
@ -33,6 +33,7 @@
|
|||||||
"@mantine/form": "^7.17.8",
|
"@mantine/form": "^7.17.8",
|
||||||
"@mantine/hooks": "^7.17.8",
|
"@mantine/hooks": "^7.17.8",
|
||||||
"@maptiler/client": "1.8.1",
|
"@maptiler/client": "1.8.1",
|
||||||
|
"@newrelic/browser-agent": "^1.306.0",
|
||||||
"@picovoice/cobra-web": "^2.0.3",
|
"@picovoice/cobra-web": "^2.0.3",
|
||||||
"@picovoice/eagle-web": "^1.0.0",
|
"@picovoice/eagle-web": "^1.0.0",
|
||||||
"@picovoice/web-voice-processor": "^4.0.9",
|
"@picovoice/web-voice-processor": "^4.0.9",
|
||||||
@ -40,7 +41,6 @@
|
|||||||
"@types/node": "^18.14.0",
|
"@types/node": "^18.14.0",
|
||||||
"@types/react": "^18.2.72",
|
"@types/react": "^18.2.72",
|
||||||
"@types/react-dom": "^18.2.22",
|
"@types/react-dom": "^18.2.22",
|
||||||
"@newrelic/browser-agent": "^1.306.0",
|
|
||||||
"axios": "^1.10.0",
|
"axios": "^1.10.0",
|
||||||
"canvas-hypertxt": "1.0.3",
|
"canvas-hypertxt": "1.0.3",
|
||||||
"cors": "^2.8.5",
|
"cors": "^2.8.5",
|
||||||
@ -54,6 +54,7 @@
|
|||||||
"leveldown": "^6.1.1",
|
"leveldown": "^6.1.1",
|
||||||
"loglevel": "^1.9.1",
|
"loglevel": "^1.9.1",
|
||||||
"meaningful-string": "^1.4.0",
|
"meaningful-string": "^1.4.0",
|
||||||
|
"newrelic": "^13.9.1",
|
||||||
"peer-lite": "2.0.2",
|
"peer-lite": "2.0.2",
|
||||||
"pouchdb": "^8.0.1",
|
"pouchdb": "^8.0.1",
|
||||||
"pouchdb-adapter-leveldb": "^9.0.0",
|
"pouchdb-adapter-leveldb": "^9.0.0",
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user