securenow 6.0.2 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/CONSUMING-APPS-GUIDE.md +455 -0
  2. package/NPM_README.md +2029 -0
  3. package/README.md +297 -40
  4. package/SKILL-API.md +634 -0
  5. package/SKILL-CLI.md +454 -0
  6. package/cidr.js +83 -0
  7. package/cli/apps.js +585 -0
  8. package/cli/auth.js +280 -0
  9. package/cli/client.js +115 -0
  10. package/cli/config.js +173 -0
  11. package/cli/diagnostics.js +387 -0
  12. package/cli/firewall.js +100 -0
  13. package/cli/fp.js +638 -0
  14. package/cli/init.js +201 -0
  15. package/cli/monitor.js +440 -0
  16. package/cli/run.js +148 -0
  17. package/cli/security.js +980 -0
  18. package/cli/ui.js +386 -0
  19. package/cli/utils.js +127 -0
  20. package/cli.js +466 -455
  21. package/console-instrumentation.js +147 -136
  22. package/docs/ALL-FRAMEWORKS-QUICKSTART.md +1377 -455
  23. package/docs/API-KEYS-GUIDE.md +233 -0
  24. package/docs/ARCHITECTURE.md +3 -3
  25. package/docs/AUTO-BODY-CAPTURE.md +1 -1
  26. package/docs/AUTO-SETUP-SUMMARY.md +331 -0
  27. package/docs/AUTO-SETUP.md +4 -4
  28. package/docs/AUTOMATIC-IP-CAPTURE.md +5 -5
  29. package/docs/BODY-CAPTURE-FIX.md +261 -0
  30. package/docs/BODY-CAPTURE-QUICKSTART.md +2 -2
  31. package/docs/CHANGELOG-NEXTJS.md +1 -35
  32. package/docs/COMPLETION-REPORT.md +408 -0
  33. package/docs/CUSTOMER-GUIDE.md +16 -16
  34. package/docs/EASIEST-SETUP.md +5 -5
  35. package/docs/ENVIRONMENT-VARIABLES.md +880 -652
  36. package/docs/EXPRESS-BODY-CAPTURE.md +13 -12
  37. package/docs/EXPRESS-SETUP-GUIDE.md +719 -720
  38. package/docs/FINAL-SOLUTION.md +335 -0
  39. package/docs/FIREWALL-GUIDE.md +426 -0
  40. package/docs/IMPLEMENTATION-SUMMARY.md +410 -0
  41. package/docs/INDEX.md +22 -4
  42. package/docs/LOGGING-GUIDE.md +701 -708
  43. package/docs/LOGGING-QUICKSTART.md +234 -255
  44. package/docs/NEXTJS-BODY-CAPTURE-COMPARISON.md +323 -0
  45. package/docs/NEXTJS-BODY-CAPTURE.md +2 -2
  46. package/docs/NEXTJS-GUIDE.md +14 -14
  47. package/docs/NEXTJS-QUICKSTART.md +1 -1
  48. package/docs/NEXTJS-SETUP-COMPLETE.md +795 -0
  49. package/docs/NEXTJS-WRAPPER-APPROACH.md +1 -1
  50. package/docs/NUXT-GUIDE.md +166 -0
  51. package/docs/QUICKSTART-BODY-CAPTURE.md +2 -2
  52. package/docs/REDACTION-EXAMPLES.md +1 -1
  53. package/docs/REQUEST-BODY-CAPTURE.md +19 -10
  54. package/docs/SOLUTION-SUMMARY.md +312 -0
  55. package/docs/VERCEL-OTEL-MIGRATION.md +3 -3
  56. package/examples/README.md +6 -6
  57. package/examples/instrumentation-with-auto-capture.ts +1 -1
  58. package/examples/nextjs-env-example.txt +2 -2
  59. package/examples/nextjs-instrumentation.js +1 -1
  60. package/examples/nextjs-instrumentation.ts +1 -1
  61. package/examples/nextjs-with-logging-example.md +6 -6
  62. package/examples/nextjs-with-options.ts +1 -1
  63. package/examples/test-nextjs-setup.js +1 -1
  64. package/firewall-cloud.js +212 -0
  65. package/firewall-iptables.js +139 -0
  66. package/firewall-only.js +38 -0
  67. package/firewall-tcp.js +74 -0
  68. package/firewall.js +720 -0
  69. package/free-trial-banner.js +174 -0
  70. package/nextjs-auto-capture.js +199 -207
  71. package/nextjs-middleware.js +186 -181
  72. package/nextjs-webpack-config.js +88 -53
  73. package/nextjs-wrapper.js +158 -158
  74. package/nextjs.d.ts +1 -1
  75. package/nextjs.js +639 -647
  76. package/nuxt-server-plugin.mjs +423 -0
  77. package/nuxt.d.ts +60 -0
  78. package/nuxt.mjs +75 -0
  79. package/package.json +186 -164
  80. package/postinstall.js +6 -6
  81. package/register.d.ts +1 -1
  82. package/register.js +39 -4
  83. package/resolve-ip.js +77 -0
  84. package/tracing.d.ts +2 -1
  85. package/tracing.js +295 -34
  86. package/web-vite.mjs +239 -156
  87. package/LICENSE +0 -15
@@ -55,7 +55,7 @@ Create `.env` or set in PM2 ecosystem file:
55
55
 
56
56
  ```bash
57
57
  SECURENOW_APPID=my-express-api
58
- SECURENOW_INSTANCE=http://your-signoz-server:4318
58
+ SECURENOW_INSTANCE=http://your-otlp-backend:4318
59
59
  SECURENOW_CAPTURE_BODY=1
60
60
  SECURENOW_MAX_BODY_SIZE=10240
61
61
  ```
@@ -192,6 +192,7 @@ import express from 'express';
192
192
  | `SECURENOW_CAPTURE_BODY` | Enable body capture (`1` or `true`) | `0` (disabled) |
193
193
  | `SECURENOW_MAX_BODY_SIZE` | Max body size in bytes | `10240` (10KB) |
194
194
  | `SECURENOW_SENSITIVE_FIELDS` | Comma-separated additional sensitive fields | (see below) |
195
+ | `SECURENOW_CAPTURE_MULTIPART` | Enable multipart/form-data streaming capture (`1` or `true`) | `0` (disabled) |
195
196
 
196
197
  ### Default Sensitive Fields
197
198
 
@@ -227,7 +228,7 @@ module.exports = {
227
228
  env: {
228
229
  NODE_ENV: 'production',
229
230
  SECURENOW_APPID: 'express-api',
230
- SECURENOW_INSTANCE: 'http://signoz:4318',
231
+ SECURENOW_INSTANCE: 'http://otel-collector:4318',
231
232
  SECURENOW_CAPTURE_BODY: '1',
232
233
  SECURENOW_NO_UUID: '1', // Same service.name
233
234
  SECURENOW_STRICT: '1', // Fail if APPID missing
@@ -274,10 +275,10 @@ pm2 logs express-api --lines 100
274
275
  | `application/json` | ✅ Yes | ✅ Yes | ✅ Yes |
275
276
  | `application/graphql` | ✅ Yes | ✅ Yes | ✅ Yes |
276
277
  | `application/x-www-form-urlencoded` | ✅ Yes | ✅ Yes | ✅ Yes |
277
- | `multipart/form-data` | No | N/A | N/A |
278
+ | `multipart/form-data` | Metadata | Streaming | Yes |
278
279
  | `text/plain` | ❌ No | N/A | N/A |
279
280
 
280
- **Note**: File uploads (`multipart/form-data`) are intentionally NOT captured for performance and privacy reasons.
281
+ **Note**: Multipart capture requires `SECURENOW_CAPTURE_MULTIPART=1` (v5.8.0+). Uses a streaming parser text field values and file metadata (name, filename, content-type, size) are captured; file binary content is never buffered or stored.
281
282
 
282
283
  ## 🔍 Example: Complete Express + PM2 Setup
283
284
 
@@ -419,7 +420,7 @@ module.exports = {
419
420
  NODE_ENV: 'production',
420
421
  PORT: 3000,
421
422
  SECURENOW_APPID: 'express-api',
422
- SECURENOW_INSTANCE: 'http://signoz.company.com:4318',
423
+ SECURENOW_INSTANCE: 'http://otel-collector.company.com:4318',
423
424
  SECURENOW_CAPTURE_BODY: '1',
424
425
  SECURENOW_MAX_BODY_SIZE: '10240',
425
426
  SECURENOW_NO_UUID: '1',
@@ -451,7 +452,7 @@ module.exports = {
451
452
  NODE_ENV: 'production',
452
453
  PORT: 3000,
453
454
  SECURENOW_APPID: 'express-api',
454
- SECURENOW_INSTANCE: 'http://signoz.company.com:4318',
455
+ SECURENOW_INSTANCE: 'http://otel-collector.company.com:4318',
455
456
  SECURENOW_CAPTURE_BODY: '1',
456
457
  SECURENOW_MAX_BODY_SIZE: '10240',
457
458
  SECURENOW_NO_UUID: '1',
@@ -541,7 +542,7 @@ curl -X POST http://localhost:3000/api/login \
541
542
 
542
543
  ### Expected Trace Attributes
543
544
 
544
- In your SigNoz dashboard, you should see:
545
+ In your SecureNow dashboard, you should see:
545
546
 
546
547
  ```json
547
548
  {
@@ -612,14 +613,14 @@ app.post('/api/upload', (req, res) => {
612
613
 
613
614
  - Add custom sensitive fields: `SECURENOW_SENSITIVE_FIELDS`
614
615
  - Test with production-like data
615
- - Review traces in SigNoz
616
+ - Review traces in SecureNow
616
617
 
617
618
  ### 2. Body Size Limits
618
619
 
619
620
  **Large bodies can cause:**
620
621
  - Memory issues
621
622
  - Performance degradation
622
- - Storage costs in SigNoz
623
+ - Storage costs in SecureNow
623
624
 
624
625
  **Recommendation:**
625
626
  - Keep `SECURENOW_MAX_BODY_SIZE` under 20KB
@@ -861,7 +862,7 @@ module.exports = {
861
862
  NODE_ENV: 'production',
862
863
  PORT: 3000,
863
864
  SECURENOW_APPID: 'express-ts-api',
864
- SECURENOW_INSTANCE: 'http://signoz.company.com:4318',
865
+ SECURENOW_INSTANCE: 'http://otel-collector.company.com:4318',
865
866
  SECURENOW_CAPTURE_BODY: '1',
866
867
  SECURENOW_MAX_BODY_SIZE: '10240',
867
868
  SECURENOW_NO_UUID: '1',
@@ -1001,7 +1002,7 @@ Currently not customizable. Default fields are comprehensive.
1001
1002
 
1002
1003
  SecureNow uses OpenTelemetry standard, so it works with:
1003
1004
 
1004
- - ✅ SigNoz (recommended)
1005
+ - ✅ SecureNow (recommended)
1005
1006
  - ✅ Jaeger
1006
1007
  - ✅ Zipkin
1007
1008
  - ✅ Any OTLP-compatible backend
@@ -1019,7 +1020,7 @@ If you encounter issues:
1019
1020
  1. Check [Troubleshooting](#-troubleshooting) section
1020
1021
  2. Enable debug logs: `OTEL_LOG_LEVEL=debug`
1021
1022
  3. Check PM2 logs: `pm2 logs express-api`
1022
- 4. Review your SigNoz dashboard for traces
1023
+ 4. Review your SecureNow dashboard for traces
1023
1024
 
1024
1025
  ---
1025
1026