update health checks
This commit is contained in:
@@ -1,28 +1,50 @@
|
|||||||
const http = require('http');
|
const http = require('http');
|
||||||
|
|
||||||
|
console.log(`[${new Date().toISOString()}] Backend health check starting...`);
|
||||||
|
|
||||||
const options = {
|
const options = {
|
||||||
hostname: 'localhost',
|
hostname: 'localhost',
|
||||||
port: 5000,
|
port: 5000,
|
||||||
path: '/health',
|
path: '/health',
|
||||||
method: 'GET',
|
method: 'GET',
|
||||||
timeout: 2000
|
timeout: 5000
|
||||||
};
|
};
|
||||||
|
|
||||||
|
console.log(`[${new Date().toISOString()}] Checking: http://${options.hostname}:${options.port}${options.path}`);
|
||||||
|
|
||||||
const req = http.request(options, (res) => {
|
const req = http.request(options, (res) => {
|
||||||
if (res.statusCode === 200) {
|
console.log(`[${new Date().toISOString()}] Response status: ${res.statusCode}`);
|
||||||
process.exit(0);
|
|
||||||
} else {
|
let data = '';
|
||||||
process.exit(1);
|
res.on('data', chunk => {
|
||||||
}
|
data += chunk;
|
||||||
|
});
|
||||||
|
|
||||||
|
res.on('end', () => {
|
||||||
|
console.log(`[${new Date().toISOString()}] Response body:`, data);
|
||||||
|
|
||||||
|
if (res.statusCode === 200) {
|
||||||
|
console.log(`[${new Date().toISOString()}] Health check PASSED`);
|
||||||
|
process.exit(0);
|
||||||
|
} else {
|
||||||
|
console.log(`[${new Date().toISOString()}] Health check FAILED - bad status code`);
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
req.on('error', () => {
|
req.on('error', (err) => {
|
||||||
|
console.log(`[${new Date().toISOString()}] Health check ERROR:`, err.message);
|
||||||
|
console.log(`[${new Date().toISOString()}] Error code:`, err.code);
|
||||||
|
console.log(`[${new Date().toISOString()}] Error details:`, err);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
});
|
});
|
||||||
|
|
||||||
req.on('timeout', () => {
|
req.on('timeout', () => {
|
||||||
|
console.log(`[${new Date().toISOString()}] Health check TIMEOUT after ${options.timeout}ms`);
|
||||||
req.destroy();
|
req.destroy();
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
req.setTimeout(options.timeout);
|
||||||
req.end();
|
req.end();
|
||||||
@@ -1,33 +1,55 @@
|
|||||||
const http = require('http');
|
const http = require('http');
|
||||||
|
|
||||||
|
console.log(`[${new Date().toISOString()}] Frontend health check starting...`);
|
||||||
|
|
||||||
const options = {
|
const options = {
|
||||||
hostname: 'localhost',
|
hostname: 'localhost',
|
||||||
port: 3000,
|
port: 3000,
|
||||||
path: '/',
|
path: '/',
|
||||||
method: 'GET',
|
method: 'GET',
|
||||||
timeout: 3000
|
timeout: 8000
|
||||||
};
|
};
|
||||||
|
|
||||||
|
console.log(`[${new Date().toISOString()}] Checking: http://${options.hostname}:${options.port}${options.path}`);
|
||||||
|
|
||||||
const req = http.request(options, (res) => {
|
const req = http.request(options, (res) => {
|
||||||
// Accept any 2xx or 3xx status code (React dev server might redirect)
|
console.log(`[${new Date().toISOString()}] Response status: ${res.statusCode}`);
|
||||||
if (res.statusCode >= 200 && res.statusCode < 400) {
|
console.log(`[${new Date().toISOString()}] Response headers:`, JSON.stringify(res.headers, null, 2));
|
||||||
console.log('Health check passed');
|
|
||||||
process.exit(0);
|
let data = '';
|
||||||
} else {
|
res.on('data', chunk => {
|
||||||
console.log(`Health check failed with status: ${res.statusCode}`);
|
data += chunk;
|
||||||
process.exit(1);
|
});
|
||||||
}
|
|
||||||
|
res.on('end', () => {
|
||||||
|
console.log(`[${new Date().toISOString()}] Response body length: ${data.length} bytes`);
|
||||||
|
console.log(`[${new Date().toISOString()}] Response snippet:`, data.substring(0, 200));
|
||||||
|
|
||||||
|
// Accept any 2xx or 3xx status code (React dev server might redirect)
|
||||||
|
if (res.statusCode >= 200 && res.statusCode < 400) {
|
||||||
|
console.log(`[${new Date().toISOString()}] Health check PASSED`);
|
||||||
|
process.exit(0);
|
||||||
|
} else {
|
||||||
|
console.log(`[${new Date().toISOString()}] Health check FAILED - status: ${res.statusCode}`);
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
req.on('error', (err) => {
|
req.on('error', (err) => {
|
||||||
console.log('Health check error:', err.message);
|
console.log(`[${new Date().toISOString()}] Health check ERROR:`, err.message);
|
||||||
|
console.log(`[${new Date().toISOString()}] Error code:`, err.code);
|
||||||
|
console.log(`[${new Date().toISOString()}] Error syscall:`, err.syscall);
|
||||||
|
console.log(`[${new Date().toISOString()}] Error address:`, err.address);
|
||||||
|
console.log(`[${new Date().toISOString()}] Error port:`, err.port);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
});
|
});
|
||||||
|
|
||||||
req.on('timeout', () => {
|
req.on('timeout', () => {
|
||||||
console.log('Health check timeout');
|
console.log(`[${new Date().toISOString()}] Health check TIMEOUT after ${options.timeout}ms`);
|
||||||
req.destroy();
|
req.destroy();
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
req.setTimeout(options.timeout);
|
||||||
req.end();
|
req.end();
|
||||||
Reference in New Issue
Block a user