Кварцевый Планировщик внезапно прекращает работать и никакая ошибка исключения

Используйте split и получите значение массива 2nd:

let str1 = '#/something/default'
let str2 = '#/something/url1/user2'
let str3 = '#/something/url2/url3/user3'
let str4 = '#/something'

console.log(str1.split('/')[2])
console.log(str2.split('/')[2])
console.log(str3.split('/')[2])

// You can use a fallback like this if there is no value:
console.log(str4.split('/')[2] || 'Nothing to see here')

Однако, если у вас настроено регулярное выражение, вы можете использовать это:

const regexp = /^#\/.+?\/(.+?)(\/|$)/

let str1 = '#/something/default'
let str2 = '#/something/url1/user2'
let str3 = '#/something/url2/url3/user3'
let str4 = '#/something'

console.log(str1.match(regexp)[1])
console.log(str2.match(regexp)[1])
console.log(str3.match(regexp)[1])

// You can use a fallback like this if there is no value:
console.log((str4.match(regexp) || [])[1] || 'Nothing to see here')

24
задан aishwarya 29 November 2011 в 11:07
поделиться

2 ответа

Если вы используете базу данных для хранения заданий, проверьте trigger_state вашего триггера. Прямо сейчас я вижу похожую проблему (или, по крайней мере, у нее похожие симптомы).

Задание, которое запускается раз в минуту, оставляет триггер в состоянии «ПРИОБРЕТЕНО» и больше никогда не запускается. Как и вы, я ничего не вижу в журнале.

Я также вижу другую причину той же проблемы. Опять же, задание просто останавливается, но триггер не находится в состоянии «ПРИОБРЕТЕНО». Пока я не знаю причину.

Что я знаю до сих пор, так это то, что поток планировщика ожидает свободный рабочий поток. Похоже, что все рабочие потоки ждут семафор, чтобы обновить свое расписание. Я еще не смог получить дамп потока, чтобы проверить, что ожидают рабочие потоки.

м работает кварц 1.6.1 RC1. Смотрите этот отчет об ошибке: http://jira.opensymphony.com/browse/QUARTZ-668

Я думаю, что это то, что я вижу.

4
ответ дан 29 November 2019 в 00:14
поделиться

Проверить, не генерирует ли какое-либо задание исключение. Поместите свой исполняемый код Job в блокировку try catch и отслеживайте любое исключение для устранения проблемы.

2
ответ дан 29 November 2019 в 00:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: