Fix jwt-token
This commit is contained in:
24
server/routes/debug.js
Normal file
24
server/routes/debug.js
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
const express = require('express');
|
||||||
|
const { ApiDebugLogger } = require('../utils/apiDebugLogger');
|
||||||
|
|
||||||
|
const router = express.Router();
|
||||||
|
const logger = new ApiDebugLogger();
|
||||||
|
|
||||||
|
// Test endpoint for API debugging
|
||||||
|
router.get('/debug-test', (req, res) => {
|
||||||
|
console.log('🧪 Debug test endpoint called');
|
||||||
|
|
||||||
|
const response = {
|
||||||
|
message: 'Debug logging test successful',
|
||||||
|
timestamp: new Date().toISOString(),
|
||||||
|
debugEnabled: process.env.API_DEBUG === 'true',
|
||||||
|
nodeEnv: process.env.NODE_ENV
|
||||||
|
};
|
||||||
|
|
||||||
|
// Manual log entry for testing
|
||||||
|
logger.log('GET', '/api/debug-test', 200, req.query, response);
|
||||||
|
|
||||||
|
res.json(response);
|
||||||
|
});
|
||||||
|
|
||||||
|
module.exports = router;
|
||||||
@@ -9,6 +9,7 @@ const userRoutes = require('./user');
|
|||||||
const alertRoutes = require('./alert');
|
const alertRoutes = require('./alert');
|
||||||
const dashboardRoutes = require('./dashboard');
|
const dashboardRoutes = require('./dashboard');
|
||||||
const healthRoutes = require('./health');
|
const healthRoutes = require('./health');
|
||||||
|
const debugRoutes = require('./debug');
|
||||||
|
|
||||||
// API versioning
|
// API versioning
|
||||||
router.use('/v1/detections', droneDetectionRoutes);
|
router.use('/v1/detections', droneDetectionRoutes);
|
||||||
@@ -27,6 +28,7 @@ router.use('/users', userRoutes);
|
|||||||
router.use('/alerts', alertRoutes);
|
router.use('/alerts', alertRoutes);
|
||||||
router.use('/dashboard', dashboardRoutes);
|
router.use('/dashboard', dashboardRoutes);
|
||||||
router.use('/health', healthRoutes);
|
router.use('/health', healthRoutes);
|
||||||
|
router.use('/debug', debugRoutes);
|
||||||
|
|
||||||
// API documentation endpoint
|
// API documentation endpoint
|
||||||
router.get('/', (req, res) => {
|
router.get('/', (req, res) => {
|
||||||
|
|||||||
@@ -3,8 +3,26 @@ const path = require('path');
|
|||||||
|
|
||||||
class ApiDebugLogger {
|
class ApiDebugLogger {
|
||||||
constructor() {
|
constructor() {
|
||||||
this.logFile = path.join(__dirname, '..', 'api_debug.log');
|
this.logFile = path.join(__dirname, '..', '..', 'api_debug.log');
|
||||||
this.enabled = process.env.NODE_ENV === 'development' || process.env.API_DEBUG === 'true';
|
this.enabled = process.env.NODE_ENV === 'development' || process.env.API_DEBUG === 'true';
|
||||||
|
|
||||||
|
// Debug logging setup
|
||||||
|
if (this.enabled) {
|
||||||
|
console.log(`🐛 ApiDebugLogger: Enabled (NODE_ENV=${process.env.NODE_ENV}, API_DEBUG=${process.env.API_DEBUG})`);
|
||||||
|
console.log(`🐛 ApiDebugLogger: Log file path: ${this.logFile}`);
|
||||||
|
|
||||||
|
// Ensure the log file exists
|
||||||
|
try {
|
||||||
|
if (!fs.existsSync(this.logFile)) {
|
||||||
|
fs.writeFileSync(this.logFile, `# API Debug Log Started at ${new Date().toISOString()}\n`);
|
||||||
|
console.log(`🐛 ApiDebugLogger: Created log file at ${this.logFile}`);
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.error(`❌ ApiDebugLogger: Failed to create log file: ${error}`);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
console.log(`🐛 ApiDebugLogger: Disabled (NODE_ENV=${process.env.NODE_ENV}, API_DEBUG=${process.env.API_DEBUG})`);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
log(method, url, statusCode, requestBody = {}, responseBody = {}, headers = {}) {
|
log(method, url, statusCode, requestBody = {}, responseBody = {}, headers = {}) {
|
||||||
@@ -31,8 +49,9 @@ class ApiDebugLogger {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
fs.appendFileSync(this.logFile, logEntry + '\n');
|
fs.appendFileSync(this.logFile, logEntry + '\n');
|
||||||
|
console.log(`🐛 API Log: ${method.toUpperCase()} ${url} - ${statusCode}`);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('Failed to write to API debug log:', error);
|
console.error('❌ Failed to write to API debug log:', error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -78,8 +97,9 @@ class ApiDebugLogger {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
fs.appendFileSync(this.logFile, logEntry + '\n');
|
fs.appendFileSync(this.logFile, logEntry + '\n');
|
||||||
|
console.log(`🐛 API Request: ${req.method} ${req.url}`);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('Failed to write request to API debug log:', error);
|
console.error('❌ Failed to write request to API debug log:', error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user