2017-02-03 2 views
0

Я пытаюсь импортировать все журналы заданий, запущенных в таблицу в Postgres. Я использую компоненты tLogCatcher и tStatCatcher и присоединяюсь к ним для создания таблицы со всеми доступными данными.Добавление журналов заданий в базу данных с помощью Talend

Работа выглядит следующим образом:

enter image description here

Внутри TMAP, Я присоединяюсь два источника из logcatcher и statcatcher на PID и имя задания и попытаться объединить результаты, что они объединены в таблице:

enter image description here

Однако всякий раз, когда работа терпит неудачу я получаю аннулирует на выходе logcatcher, даже если сообщения об ошибках:

[statistics] connecting to socket on port 3696 
[statistics] connected 
2017-02-03 13:51:07|PR7710|PR7710|PR7710|6981|NASIA|Master_ETL_Job|_52dYEJUvEeaqS8phzVFskQ|0.1|Default||begin|| 
Exception in component tFileInputDelimited_1 
java.io.FileNotFoundException: /Users/nasiantalla/Documents/keychain.csv (No such file or directory) 
    at java.io.FileInputStream.open0(Native Method) 
    at java.io.FileInputStream.open(FileInputStream.java:195) 
    at java.io.FileInputStream.<init>(FileInputStream.java:138) 
    at java.io.FileInputStream.<init>(FileInputStream.java:93) 
    at org.talend.fileprocess.TOSDelimitedReader.<init>(TOSDelimitedReader.java:88) 
    at org.talend.fileprocess.FileInputDelimited.<init>(FileInputDelimited.java:164) 
    at nasia.master_etl_job_0_1.Master_ETL_Job.tFileInputDelimited_1Process(Master_ETL_Job.java:796) 
    at nasia.master_etl_job_0_1.Master_ETL_Job.runJobInTOS(Master_ETL_Job.java:6073) 
    at nasia.master_etl_job_0_1.Master_ETL_Job.main(Master_ETL_Job.java:5879) 
2017-02-03 13:51:08|PR7710|PR7710|PR7710|NASIA|Master_ETL_Job|Default|6|Java Exception|tFileInputDelimited_1|java.io.FileNotFoundException:/Users/nasiantalla/Documents/keychain.csv (No such file or directory)|1 
2017-02-03 13:51:08|PR7710|PR7710|PR7710|6981|NASIA|Master_ETL_Job|_52dYEJUvEeaqS8phzVFskQ|0.1|Default||end|failure|890 
[statistics] disconnected 
Job Master_ETL_Job endet am 13:51 03/02/2017. [exit code=1] 

И в моей таблице данные я получаю, как это:

enter image description here

Вы видите то, что я, возможно, пропустил? Я пробовал со всеми различными объединениями в tMap, но он, похоже, не работает, и я не понимаю, почему ..

Заранее спасибо!

ответ

1

tStatCatcher и tLogCatcher не работают при подключении tMap. Я не могу дать окончательный ответ о том, почему, но я думаю, что это связано со специальной функциональностью, связанной с «улавливанием» ошибок и статистики, и, скорее всего, это вопрос времени. Например, ловец-ловушка будет ловить ошибку, тогда как статистика может отображать статистику по каждому компоненту.

Я рекомендую писать отдельные таблицы и присоединяться к этим таблицам для создания отчетов. На самом деле Talend имеет встроенную функциональность, поэтому вам даже не нужно предоставлять свои собственные компоненты tStatCatcher и tLogCatcher в каждом задании.

Сначала необходимо создать структуру базы данных AMC, а затем перейти в файл -> изменить настройки проекта -> параметры задания -> статистика и журналы. Выберите вариант «по базе данных». Затем Talend автоматически записывает статистику, ошибки и потоки в базу данных AMC. Вы можете сообщить об этом db.
enter image description here

enter image description here

+0

ничего себе, это удивительно, я не знаю, Talend может войти автоматически! Большое спасибо!! –

1

Они 3 причины:

  • tLogCatcher не предоставляет журналы, если нет tDie или tWarn, и я думаю, что это ваш случай.

  • Не обязательно, чтобы tLogCatcher и tStatCatcher предоставляли свои данные одновременно, потому что их инициировали различные события. Поэтому соединение не будет совпадать.

  • От функционального предложения, соединяющий поток 2, не имеет смысла, они полностью независимы.

Я Recommand вам сбросить эти потоки в различные таблицы и это может быть достигнуто неявно без использования какого-либо компонента и без развития, см here.

Смежные вопросы