ЦИТК-1030. Упрощение останов обработчика исходящих сообщение без повторного завершения дочернего процесса

This commit is contained in:
boa604 2026-05-29 13:24:44 +03:00
parent 45c0d42bcb
commit 36e8adc3c2

View File

@ -195,34 +195,14 @@ class OutQueue extends EventEmitter {
if (prms.proc) this.clearWorkerTerminateTimeout(prms.proc);
//Удаляем идентификатор позиции очереди из списка обрабатываемых
this.rmInProgress({ nQueueId: prms.nQueueId });
//Завершаем процесс обработчика, если он ещё активен
let killRes = true;
let killErr = false;
if (prms.proc?.connected) {
try {
killRes = prms.proc.kill();
} catch (e) {
killRes = false;
killErr = true;
//Отразим в протоколе ошибку останова
await this.logger.error(`Ошибка останова обработчика исходящего сообщения ${prms.nQueueId}: ${makeErrorText(e)}`, {
nQueueId: prms.nQueueId
});
}
}
//Отразим в протоколе завершение процесса обработчика
if (prms.proc) {
if (!killRes && !killErr)
await this.logger.error(`Процесс обработчика исходящего сообщения ${prms.nQueueId} не был успешно завершен`, {
nQueueId: prms.nQueueId
});
else if (killRes) {
const terminateTimeoutFired = prms.proc.terminateTimeoutFired === true;
const message = `Процесс обработчика исходящего сообщения ${prms.nQueueId} завершен${terminateTimeoutFired ? " (по таймауту)" : ""}`;
const logData = { nQueueId: prms.nQueueId };
if (terminateTimeoutFired) await this.logger.warn(message, logData);
else await this.logger.info(message, logData);
}
}
//Сбрасываем признак "В работе" позиции очереди
await this.dbConn.setInProgress({
nQueueId: prms.nQueueId,