What Vigilon tracks
See which Node.js libraries Vigilon tracks automatically, and how to leave out routes you do not want to monitor.
What Vigilon tracks automatically
Once Vigilon starts, it tracks every supported library your app uses. There is nothing to turn on per library. Each request to your app becomes a trace. Database queries and outgoing calls made during that request appear inside it as spans. A span records the timing and details of one operation.
Web frameworks: Express and Fastify. Requests to a plain Node.js http or https server are tracked too.
Outgoing HTTP calls: http, https, the built-in fetch, and undici.
PostgreSQL: pg.
MySQL: mysql and mysql2.
Other datastores: MongoDB, and Redis through redis and ioredis.
AWS: Lambda invocations when running inside AWS Lambda.
Vigilon sends traces. The endpoint and job numbers in your dashboard are worked out from them, so there is nothing else to set up.
Background jobs are not tracked automatically. Wrap each job with withJobMonitor as described in the Background jobs guide.
Exclude health checks or other routes
Health checks and similar routes add noise. Vigilon leaves out /health, /ready, and /favicon.ico by default. Excluded routes do not appear in Traces or Endpoints.
To leave out more routes, list them in an environment variable, separated by commas:
export VIGILON_EXCLUDED_URLS="/metrics,/internal/status"
Each value has to match the request URL exactly, including any query string. /metrics leaves out /metrics, but not /metrics/ or /metrics?format=json. Your values are added to the defaults; they do not replace them.