Skip to content
Snippets Groups Projects
Commit 2520ff6d authored by BITARD Michaël's avatar BITARD Michaël Committed by SAFINE LAGET Anis
Browse files

chore(daily): corrige les logs du daily (!1596)

parent 337df98a
Branches
Tags
1 merge request!1596chore(daily): corrige les logs du daily
Pipeline #458876 passed
......@@ -60,8 +60,6 @@ export const logsUpdate = ({
console.info('-')
console.info(dailySummaryMarker)
console.info('tâches exécutées:')
if (isNotNullNorUndefined(etapesCompletesErreurs)) {
if (etapesCompletesErreurs.etapesRecentes.length > 0) {
console.warn(`${etapesCompletesErreurs.etapesRecentes.length} étapes récentes ne sont pas complètes`)
......
......@@ -46,5 +46,5 @@ export const etapesFondamentaleIdUpdateForAll = (pool: Pool): Effect.Effect<numb
pipe(
getDemarches(pool),
Effect.flatMap(Effect.forEach(({ id }) => etapesFondamentaleIdUpdate(pool, id))),
Effect.map(demarches => demarches.length)
Effect.map(demarches => demarches.reduce((acc, value) => acc + value, 0))
)
......@@ -16,8 +16,9 @@ const envHttpProxyAgent = new EnvHttpProxyAgent()
setGlobalDispatcher(envHttpProxyAgent)
const logFile = '/tmp/cron.log'
const output = createWriteStream(logFile)
const output = createWriteStream(logFile, { flush: true, autoClose: true })
// eslint-disable-next-line
const oldConsole = console.log
if (isNotNullNorUndefined(config().CAMINO_STAGE)) {
const logger = new Console.Console({ stdout: output, stderr: output })
// eslint-disable-next-line no-console
......@@ -81,6 +82,7 @@ const tchapSend = async (markdown: string, url: string): Promise<void> => {
},
})
}
const tasks = async () => {
console.info('Tâches quotidiennes : démarrage')
// Réinitialise les logs qui seront envoyés par email
......@@ -92,6 +94,11 @@ const tasks = async () => {
}
if (isNotNullNorUndefined(config().CAMINO_STAGE)) {
await new Promise<void>(resolve => {
output.end(() => resolve())
})
// eslint-disable-next-line
console.log = oldConsole
const emailBody = `Résultats de ${config().ENV} \n${readFileSync(logFile).toString()}`
try {
const tchapHook = config().TCHAP_HOOK
......@@ -106,6 +113,7 @@ const tasks = async () => {
}
console.error(errorMessage)
}
// TODO 2024-12-05 enlever le daily par email si il s'est bien envoyé via tchap
await mailjetSend([config().ADMIN_EMAIL], {
Subject: `[Camino][${config().ENV}] Résultats du daily`,
......@@ -115,13 +123,17 @@ const tasks = async () => {
console.info('Tâches quotidiennes : terminé')
}
tasks()
.then(() => {
output.end()
// eslint-disable-next-line
;(async () => {
try {
await tasks()
await new Promise<void>(resolve => {
output.end(() => resolve())
})
process.exit()
})
.catch(e => {
} catch (e) {
console.error('Erreur', e)
output.end()
process.exit(1)
})
}
})()
......@@ -117,6 +117,7 @@ const etapesValidate = async (pool: Pool, demarcheIds?: DemarcheId[]) => {
return { surTitreValide: errorsTitresValides, autre: autreErrors, etapesRecentes }
}
const MAX_ERRORS_TO_DISPLAY = 20
export const etapesCompletesCheck = async (pool: Pool, demarcheIds?: DemarcheId[]): Promise<{ surTitreValide: string[]; autre: string[]; etapesRecentes: string[] }> => {
console.info()
console.info('- - -')
......@@ -127,21 +128,21 @@ export const etapesCompletesCheck = async (pool: Pool, demarcheIds?: DemarcheId[
const { surTitreValide, autre, etapesRecentes } = await etapesValidate(pool, demarcheIds)
etapesRecentes.forEach(e => {
errorsNb++
if (errorsNb < 100) {
if (errorsNb < MAX_ERRORS_TO_DISPLAY) {
console.warn(e)
}
})
surTitreValide.forEach(e => {
errorsNb++
if (errorsNb < 100) {
if (errorsNb < MAX_ERRORS_TO_DISPLAY) {
console.warn(e)
}
})
autre.forEach(e => {
errorsNb++
if (errorsNb < 100) {
if (errorsNb < MAX_ERRORS_TO_DISPLAY) {
console.warn(e)
}
})
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment