UNPKG

backend-mcp

Version:

Generador automático de backends con Node.js, Express, Prisma y módulos configurables. Servidor MCP compatible con npx para agentes IA. Soporta PostgreSQL, MySQL, MongoDB y SQLite.

265 lines (241 loc) 5.69 kB
module: name: "logging" version: "1.0.0" description: "Sistema completo de logging estructurado con Winston y auditoría" category: "monitoring" author: "Backend MCP" license: "MIT" triggers: - condition: "user_wants_logging" value: true - condition: "needs_monitoring" value: true - condition: "requires_audit" value: true - condition: "has_debugging" value: true - keywords: - "logging" - "logs" - "winston" - "auditoría" - "monitoring" - "debug" - "error tracking" - "observability" entry_points: service: "templates/logger.service.ts.hbs" config: "templates/winston.config.ts.hbs" middleware: "templates/audit.middleware.ts.hbs" interceptor: "templates/logging.interceptor.ts.hbs" dependencies: required: - "database" optional: - "auth" - "email" environment_variables: required: [] optional: - LOG_LEVEL - LOG_FORMAT - LOG_FILE_PATH - LOG_MAX_SIZE - LOG_MAX_FILES - LOG_DATE_PATTERN - ENABLE_CONSOLE_LOG - ENABLE_FILE_LOG - ENABLE_DATABASE_LOG - SENTRY_DSN - ELASTICSEARCH_URL features: - "structured-logging" - "multiple-transports" - "log-rotation" - "audit-trail" - "error-tracking" - "performance-monitoring" - "request-logging" - "database-logging" - "file-logging" - "console-logging" - "log-filtering" - "log-formatting" api_endpoints: - "GET /logs" - "GET /logs/audit" - "GET /logs/errors" - "GET /logs/performance" - "POST /logs/search" - "GET /logs/stats" generated_files: - "src/logging/logger.service.ts" - "src/logging/winston.config.ts" - "src/logging/audit.middleware.ts" - "src/logging/logging.interceptor.ts" - "src/logging/audit.service.ts" - "src/logging/logging.controller.ts" - "src/logging/logging.module.ts" integration: database_tables: - "audit_logs" - "error_logs" - "performance_logs" - "request_logs" auth_integration: - "user-action-tracking" - "login-audit" - "permission-logging" middleware_integration: - "request-response-logging" - "error-capture" - "performance-timing" log_levels: - "error" - "warn" - "info" - "http" - "verbose" - "debug" - "silly" transports: - name: "console" description: "Logging a consola para desarrollo" config: - "LOG_LEVEL" - "ENABLE_CONSOLE_LOG" - name: "file" description: "Logging a archivos con rotación" config: - "LOG_FILE_PATH" - "LOG_MAX_SIZE" - "LOG_MAX_FILES" - "LOG_DATE_PATTERN" - name: "database" description: "Logging a base de datos" config: - "ENABLE_DATABASE_LOG" - name: "elasticsearch" description: "Logging a Elasticsearch" config: - "ELASTICSEARCH_URL" - name: "sentry" description: "Error tracking con Sentry" config: - "SENTRY_DSN" audit_events: - "user_login" - "user_logout" - "user_register" - "password_change" - "data_create" - "data_update" - "data_delete" - "permission_change" - "system_config_change" - "api_access" performance_metrics: - "request_duration" - "database_query_time" - "memory_usage" - "cpu_usage" - "response_size" - "concurrent_requests" log_formats: - name: "json" description: "Formato JSON estructurado" - name: "simple" description: "Formato simple para desarrollo" - name: "combined" description: "Formato combinado con timestamp" - name: "custom" description: "Formato personalizable" usage_examples: - "API request/response logging" - "Error tracking and monitoring" - "User action auditing" - "Performance monitoring" - "Security event logging" - "Database operation tracking" ai_instructions: | Use this module when: - User mentions "logging", "logs", "monitoring", "audit", "debug" - Project requires error tracking - Need compliance or audit trails - Performance monitoring is needed Always combine with: - database module (for log persistence) - auth module (for user action tracking) Configuration steps: 1. Setup Winston configuration 2. Configure log transports (console, file, database) 3. Setup audit middleware 4. Configure log levels and formats 5. Integrate with error tracking (Sentry) 6. Setup log rotation and retention automation: scripts: - "setup-logging" - "rotate-logs" - "analyze-logs" - "export-audit" testing: unit_tests: - "logger.service.test.ts" - "audit.middleware.test.ts" - "logging.interceptor.test.ts" integration_tests: - "logging-flow.test.ts" - "audit-trail.test.ts" e2e_tests: - "error-tracking.e2e.test.ts" - "performance-logging.e2e.test.ts" performance: metrics: - "logs_per_second" - "log_processing_time" - "storage_usage" - "query_performance" optimization: - "async_logging" - "log_batching" - "compression" - "indexing" retention: policies: - "error_logs: 90 days" - "audit_logs: 7 years" - "performance_logs: 30 days" - "debug_logs: 7 days" cleanup: - "automated_archival" - "compression" - "selective_deletion" security: features: - "log_sanitization" - "pii_filtering" - "access_control" - "encryption_at_rest" compliance: - "gdpr_compliant" - "hipaa_ready" - "sox_compliant" compatibility: node_versions: - ">=16.0.0" frameworks: - "nestjs" - "express" - "fastify" databases: - "postgresql" - "mysql" - "mongodb" - "elasticsearch" documentation: - "README.md" - "API.md" - "CONFIGURATION.md" - "COMPLIANCE.md" - "TROUBLESHOOTING.md"