fix(xo-server/jobs): emit job:terminated
even if job throws (#3593)
Fixes #3458
This commit is contained in:
parent
0011bfea8c
commit
87c3c8732f
@ -27,6 +27,7 @@
|
|||||||
- [Backup NG] Improve the Schedule's view (Replace table by list) [#3491](https://github.com/vatesfr/xen-orchestra/issues/3491) (PR [#3586](https://github.com/vatesfr/xen-orchestra/pull/3586))
|
- [Backup NG] Improve the Schedule's view (Replace table by list) [#3491](https://github.com/vatesfr/xen-orchestra/issues/3491) (PR [#3586](https://github.com/vatesfr/xen-orchestra/pull/3586))
|
||||||
- ([Host/Storage], [Sr/hosts]) add bulk deletion [#3179](https://github.com/vatesfr/xen-orchestra/issues/3179) (PR [#3539](https://github.com/vatesfr/xen-orchestra/pull/3539))
|
- ([Host/Storage], [Sr/hosts]) add bulk deletion [#3179](https://github.com/vatesfr/xen-orchestra/issues/3179) (PR [#3539](https://github.com/vatesfr/xen-orchestra/pull/3539))
|
||||||
- [xo-server] Use @xen-orchestra/log for basic logging [#3555](https://github.com/vatesfr/xen-orchestra/issues/3555) (PR [#3579](https://github.com/vatesfr/xen-orchestra/pull/3579))
|
- [xo-server] Use @xen-orchestra/log for basic logging [#3555](https://github.com/vatesfr/xen-orchestra/issues/3555) (PR [#3579](https://github.com/vatesfr/xen-orchestra/pull/3579))
|
||||||
|
- [Backup Report] Log error when job failed [#3458](https://github.com/vatesfr/xen-orchestra/issues/3458) (PR [#3593](https://github.com/vatesfr/xen-orchestra/pull/3593))
|
||||||
|
|
||||||
### Bug fixes
|
### Bug fixes
|
||||||
|
|
||||||
|
@ -290,8 +290,8 @@ export default class Jobs {
|
|||||||
runs[runJobId] = { cancel }
|
runs[runJobId] = { cancel }
|
||||||
|
|
||||||
let session
|
let session
|
||||||
|
const app = this._app
|
||||||
try {
|
try {
|
||||||
const app = this._app
|
|
||||||
session = app.createUserConnection()
|
session = app.createUserConnection()
|
||||||
session.set('user_id', job.userId)
|
session.set('user_id', job.userId)
|
||||||
|
|
||||||
@ -316,11 +316,16 @@ export default class Jobs {
|
|||||||
|
|
||||||
app.emit('job:terminated', status, job, schedule, runJobId)
|
app.emit('job:terminated', status, job, schedule, runJobId)
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
logger.error(`The execution of ${id} has failed.`, {
|
await logger.error(
|
||||||
event: 'job.end',
|
`The execution of ${id} has failed.`,
|
||||||
runJobId,
|
{
|
||||||
error: serializeError(error),
|
event: 'job.end',
|
||||||
})
|
runJobId,
|
||||||
|
error: serializeError(error),
|
||||||
|
},
|
||||||
|
true
|
||||||
|
)
|
||||||
|
app.emit('job:terminated', undefined, job, schedule, runJobId)
|
||||||
throw error
|
throw error
|
||||||
} finally {
|
} finally {
|
||||||
;this.updateJob({ id, runId: null })::ignoreErrors()
|
;this.updateJob({ id, runId: null })::ignoreErrors()
|
||||||
|
Loading…
Reference in New Issue
Block a user