Я пытаюсь поймать сообщение об ошибке, возникшее внутри подзадания tRunJob Дерево заданий минимально:
Main_Job -- execute a subjob and catch the output
> Sub_Job -- do some stuff and can raise an error.
Для теста я пытаюсь вызвать ошибку, но трассировка стека пуста.
Задания выполняются следующим образом:
-
Sub_Job
содержит tDie
, чтобы вызвать ошибку;
- Мне нужно получить сообщение об ошибке в
Main_Job
, возможно, в трассировке стека, поэтому после tRunJob
я обрабатываю ошибку с помощью tJava
;
tJava использует globalMap
для получения трассировки стека следующим образом:
System.out.println(
"myLog --->> "+ ((String)globalMap.get("tRunJob_1_ERROR_MESSAGE")));
System.out.println(
"myLog --->> "+ (String)globalMap.get("tRunJob_1_CHILD_EXCEPTION_STACKTRACE")));
Вывод на консоль плоский: сообщение об ошибке общего характера и без стека:
myLog --->> Child job running failed.
myLog --->>
[statistics] disconnected
Я хочу CHILD_EXCEPTION_STACKTRACE
значение, но для tRunJob кажется пустым. Есть ли вариант, который я не вижу? Нужно ли вручную загружать трассировку стека изнутри Sub_Job
? Как?
Ниже приведены простые Main_Job
и Sub_Job
:
Спасибо