refactor: rename email-server-worker to email-worker
Rename directory from email-server-worker to email-worker for clarity and brevity. Update all references in CLAUDE.md documentation.
This commit is contained in:
35
email-worker/src/routes/healthcheckRouter.ts
Normal file
35
email-worker/src/routes/healthcheckRouter.ts
Normal file
@@ -0,0 +1,35 @@
|
||||
import { RequestHandler, Router } from "express";
|
||||
import { workerRunnerInfo } from "../workRunner";
|
||||
import { coalesce } from "../lib/initTools";
|
||||
|
||||
const PULL_INTERVAL = parseInt(coalesce(process.env.PULL_INTERVAL, "10000"));
|
||||
|
||||
/** Maximum time between two worker jobs */
|
||||
const MAX_WORKER_LATENCY = PULL_INTERVAL * 2.5;
|
||||
|
||||
/**
|
||||
* Router koji se izvršava u slučaju grube greške koja nije obrađena nigdje prije
|
||||
* @param req express request
|
||||
* @param res express response
|
||||
* @param next
|
||||
*/
|
||||
export const healthcheckRouter:RequestHandler = async (req, res, next) => {
|
||||
const workerLatency = Date.now() - workerRunnerInfo.lastWorkTime;
|
||||
|
||||
if(workerLatency > MAX_WORKER_LATENCY) {
|
||||
const msg = `No work done in ${workerLatency}ms. Last worker status = "${workerRunnerInfo.status}"`;
|
||||
|
||||
console.warn(msg)
|
||||
|
||||
res.status(500);
|
||||
res.setHeader('Content-Type', 'text/plain');
|
||||
res.end(msg);
|
||||
} else {
|
||||
res.status(200);
|
||||
res.setHeader('Content-Type', 'text/plain');
|
||||
res.end('OK');
|
||||
}
|
||||
};
|
||||
|
||||
export const pingRouter = Router();
|
||||
pingRouter.get('/', healthcheckRouter);
|
||||
Reference in New Issue
Block a user