SecureNow
OpenTelemetry instrumentation for Node.js and Next.js applications - send traces and logs to SigNoz or any OTLP-compatible backend.
Official npm package: securenow
🚀 Quick Start
For Next.js Applications
The easiest way to add observability to Next.js!
# Just install - setup is automatic!
npm install securenow
🎉 The installer will automatically:
- Detect your Next.js project
- Create
instrumentation.ts(or.js) - Create
.env.localtemplate
Just answer "Y" when prompted!
Then configure your .env.local:
SECURENOW_APPID=my-nextjs-app
SECURENOW_INSTANCE=http://your-signoz-server:4318
Alternative: Use the CLI command
npx securenow init
Done! 🎉 See Next.js Complete Guide for details.
For Node.js Applications (Express, Fastify, NestJS, etc.)
Tracing Only
# 1. Install
npm install securenow
# 2. Set environment variables
export SECURENOW_APPID=my-app
export SECURENOW_INSTANCE=http://your-signoz-server:4318
# 3. Run with preload
NODE_OPTIONS="-r securenow/register" node app.js
# or
NODE_OPTIONS="-r securenow/register" npm start
Tracing + Logging (Recommended)
# 1. Install
npm install securenow
# 2. Set environment variables
export SECURENOW_APPID=my-app
export SECURENOW_INSTANCE=http://your-signoz-server:4318
export SECURENOW_LOGGING_ENABLED=1
# 3. Run with preload (adds logging)
NODE_OPTIONS="-r securenow/register -r securenow/console-instrumentation" node app.js
# Now all console.log/info/warn/error automatically go to SigNoz!
📦 Installation
npm install securenow
# or
yarn add securenow
# or
pnpm add securenow
⚙️ Configuration
Environment Variables
# Required: Your application identifier
SECURENOW_APPID=my-app-name
# Optional: Your SigNoz/OTLP collector endpoint
# Default: https://freetrial.securenow.ai:4318
SECURENOW_INSTANCE=http://your-signoz-server:4318
# Optional: Enable Logging
SECURENOW_LOGGING_ENABLED=1 # Enable automatic log collection
# Optional: Additional configuration
SECURENOW_NO_UUID=1 # Don't append UUID to service name
OTEL_LOG_LEVEL=info # debug|info|warn|error
SECURENOW_DISABLE_INSTRUMENTATIONS=fs,dns # Disable specific instrumentations
OTEL_EXPORTER_OTLP_HEADERS="x-api-key=..." # Authentication headers
# Optional: Request body capture (for debugging)
SECURENOW_CAPTURE_BODY=1 # Capture request bodies in traces
SECURENOW_MAX_BODY_SIZE=10240 # Max body size in bytes
SECURENOW_SENSITIVE_FIELDS="field1,field2" # Additional fields to redact
Legacy Environment Variables (still supported)
export securenow=<API-KEY>
export securenow_instance='http://<dedicated_instance>:4318'
🎯 Supported Frameworks & Libraries
SecureNow automatically instruments:
Web Frameworks
- ✅ Next.js (App Router & Pages Router)
- ✅ Express.js
- ✅ Fastify
- ✅ NestJS
- ✅ Koa
- ✅ Hapi
Databases
- ✅ PostgreSQL
- ✅ MySQL / MySQL2
- ✅ MongoDB
- ✅ Redis
Logging
- ✅ Automatic console logging (console.log, info, warn, error)
- ✅ Structured logging with OpenTelemetry
- ✅ Automatic trace-log correlation
- ✅ Works with all frameworks
Other
- ✅ HTTP/HTTPS requests
- ✅ GraphQL
- ✅ gRPC
- ✅ And many more via OpenTelemetry auto-instrumentation
📚 Documentation
Quick Starts
- Next.js Quick Start - Get started in 30 seconds
- Logging Quick Start - Add logging in 2 minutes
Complete Guides
- Next.js Complete Guide - Full Next.js integration guide
- Logging Complete Guide - Full logging setup for all frameworks
- 📚 Complete Documentation - All guides and references
Examples
- Code Examples - Ready-to-use examples for different setups
🆘 Support
- Website: securenow.ai
- Issues: Report bugs and request features
- Documentation: Full documentation and guides
📄 License
ISC