Back to Directory/Security & Auth

SecureNow

Production security for Node.js apps: investigate live attacks, block IPs, tune detections.

Security & AuthJavaScriptv8.12.4

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.local template

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

Complete Guides

Examples


πŸ†˜ Support

  • Website: securenow.ai
  • Issues: Report bugs and request features
  • Documentation: Full documentation and guides

πŸ“„ License

ISC

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
npx -y securenow

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "ai-securenow-securenow": {
      "command": "npx",
      "args": [
        "-y",
        "securenow"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

securenownpm

Compatible MCP Clients

SecureNow works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More