Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / OLAP и DWH Новый топик    Ответить
 Informatica. Организовать цикл по лог файлам  [new]
SpellBuilder
Member

Откуда: р.Москва, д.МО
Сообщений: 1895
Подскажите пожалуйста как организовать цикл по содержимому папки с лог файлами АТС.
Имя файла содержит дату лога, расширение лог.
?
8 апр 11, 11:04    [10490065]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
Chubaka
Member

Откуда: Москва
Сообщений: 176
А при чем тут Информатика?

p.s.
Что такое "лог файлы АТС"??
8 апр 11, 15:20    [10492018]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
SpellBuilder
Member

Откуда: р.Москва, д.МО
Сообщений: 1895
Chubaka,

Текстовые файлы содержащие звонки, которые телефонная станция ложит на файл сервер, в полночь, каждый день-имя.log

Нужно их прогрузить и каждый день подгружать новый в хранилище
8 апр 11, 15:40    [10492214]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
red_rabbit
Member

Откуда: Москва однако
Сообщений: 173
Первое что пришло :
1. Создайте табличку, в которую будите записывать имена всех файлов, которые нужно загрузить.
2. Напишите скрипт который заполнял бы эту табличку.
3. Создайте маппинг, который будет лазить в эту таблицу и проверять наличие файлов, подлежащий загрузке, на выходе этого маппинга файл парамерт содержащий путь к файлу.
4. Создайте маппинг который загружает такой файл, укажите ему файл парамерт, сформированный первым маппингом.
5. Создайте маппинг который в случае успеха проставляет отметку в табличке о том, что файл загружен.
6. Создайте флоу из 3 сессий.
Пусть крутится до тех пор, пока все файлы из таблички не будут загружены.
8 апр 11, 15:57    [10492351]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
Газироффка
Member

Откуда:
Сообщений: 47
1. Делаем мап, который грузит нужные файлы. Имя файла передавать параметром.
2. Пишется скрипт средствами ОС, который:
- бежит в цикле по всем нужным лог файлам
- для каждого формирует файл параметров
- запускает воркфлоу, в который входит мап загрузки, с этим файлом параметров.
3. Можно сделать "управляющее" воркылоу, которое, к примеру каждый день запускает из команд таска этот скрипт.
8 апр 11, 16:52    [10492788]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
Chubaka
Member

Откуда: Москва
Сообщений: 176
1) в pre-command сессии суете скрипт
dir /b *.txt > FileList.lst
2) в свойстве Indirect File List источника указываете FileList.lst
8 апр 11, 17:13    [10492899]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
Apex
Member

Откуда: Made in USSR
Сообщений: 3900
Chubaka
1) в pre-command сессии суете скрипт
dir /b *.txt > FileList.lst
2) в свойстве Indirect File List источника указываете FileList.lst

Можно еще проще:
1) В типе файла указываете Command, а в свойстве Indirect File List источника указываете саму команду dir /b *.txt.
10 апр 11, 16:33    [10497688]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
HallucinogenLSD
Member

Откуда: default city
Сообщений: 147
Apex
Можно еще проще:
1) В типе файла указываете Command, а в свойстве Indirect File List источника указываете саму команду dir /b *.txt.


Обалденная фича :-)
10 апр 11, 20:39    [10498230]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
Chubaka
Member

Откуда: Москва
Сообщений: 176
Apex,
Я однажды сильно накололся с типом данных Command, когда пытался реализовать через него обращение к утилитам командной строки самой Информатики (pmrep и infacmd). После старта этих утилит через Command утилизация ими CPU взлетала до 100%, а Информатика наглухо залипала. Вывести ее из комы удавалось только загасив процесс pmrep/infacmd.
Было все это достаточно давно, на версии 8.6.1 hf6, если мне не изменяет память. Возможно что-то с тех пор изменилось, а возможно это я тогда как-то накосячил. Тогда из-за нехватки времени я до конца с проблемой не разобрался и пошел другим путем. Но с тех пор недолюбливаю эту фичу :)
10 апр 11, 22:23    [10498469]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
Apex
Member

Откуда: Made in USSR
Сообщений: 3900
Chubaka
Apex,
Я однажды сильно накололся с типом данных Command, когда пытался реализовать через него обращение к утилитам командной строки самой Информатики (pmrep и infacmd). После старта этих утилит через Command утилизация ими CPU взлетала до 100%, а Информатика наглухо залипала. Вывести ее из комы удавалось только загасив процесс pmrep/infacmd.
Было все это достаточно давно, на версии 8.6.1 hf6, если мне не изменяет память. Возможно что-то с тех пор изменилось, а возможно это я тогда как-то накосячил. Тогда из-за нехватки времени я до конца с проблемой не разобрался и пошел другим путем. Но с тех пор недолюбливаю эту фичу :)

Ну, может и так. Но тут то надо всего лишь список файлов получить:)
11 апр 11, 09:40    [10499085]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
SpellBuilder
Member

Откуда: р.Москва, д.МО
Сообщений: 1895
Informatica 8.6
Не получается. Ошибка "Том в устройстве C не имеет метки."

кусочек лога в различных кодировках
READER_1_1_1> FR_3000 Error opening file [C:\Informatica\PowerCenter8.6.0\server\infa_shared\SrcFiles\'R┐ ў гбваRcбвў_ C -_ Ё┐__в ┐_вЄЁ.]. Operating system error message [Не удается найти указанный файл.].
READER_1_1_1> CMN_1761 Timestamp Event: [Thu Jun 02 13:36:15 2011]
READER_1_1_1> FR_3019 Error opening file.

READER_1_1_1> FR_3000 Error opening file [C:\Informatica\PowerCenter8.6.0\server\infa_shared\SrcFiles\Том в устройстве C не имеет метки.]. Operating system error message [═х єфрхЄё  эрщЄш єърчрээ√щ Їрщы.].
READER_1_1_1> CMN_1761 Timestamp Event: [Thu Jun 02 13:36:15 2011]
READER_1_1_1> FR_3019 Error opening file.

Подскажите пожалуйста, что не так делаю?

К сообщению приложен файл. Размер - 65Kb
2 июн 11, 13:39    [10752289]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
HallucinogenLSD
Member

Откуда: default city
Сообщений: 147
Informatica KB
Forward slash is converted to a back slash when using the Command Generate File List option with a flat file source

Problem Description


A session will fail when it has a source flat file that is configured with the Command generating file list option and the command text has a forward slash ("/") in it.

Example:
This occurs with the following command:

dir /b C:\Informatica\PowerCenter8.6\server\infa_shared\SrcFiles\*.txtRun a session with this command and it fails with the following error

INFO : (4196 | READER_1_1_1) : FR_3086 : Reading input filenames from standard output of the shell command [dir \b C:\Informatica\PowerCenter8.6\server\infa_shared\SrcFiles\*.txt].
INFO : (4196 | READER_1_1_1) : CMN_1937 : [SQ_jaco] Starting shell command [dir \b C:\Informatica\PowerCenter8.6\server\infa_shared\SrcFiles\*.txt].
INFO : (4196 | READER_1_1_1) : CMN_1942 : [SQ_jaco] Redirected standard error of the shell command to temporary file [C:\Informatica\PowerCenter8.6\server\infa_shared/Temp/iPmCmd55_7_0_826].
INFO : (4196 | READER_1_1_1) : CMN_1951 : [SQ_jaco] Started shell command [dir \b C:\Informatica\PowerCenter8.6\server\infa_shared\SrcFiles\*.txt]. Process id is 2428.
INFO : (4196 | READER_1_1_1) : CMN_1948 : [SQ_jaco] Process id 2428. The shell command completed successfully.
INFO : (4196 | READER_1_1_1) : CMN_1954 : [SQ_jaco] Process id 2428. Standard output and error:
File Not Found

The command is converted to the following at session run time:

dir \b C:\Informatica\PowerCenter8.6\server\infa_shared\SrcFiles\*.txtThe file infa_shared/Temp/iPmCmd55_7_0_826 does not actually exist after the session run.


Cause

This is a known issue (CR 191249) with PowerCenter on Windows.


Workaround

Create a batch script to wrap the command and set the command as the name of the batch file.

Example:
In this example the following can be used in the batch file:

@echo offcd C:\Informatica\PowerCenter8.6\server\infa_shared\SrcFilesdir /b ff*.txt
2 июн 11, 15:53    [10753843]     Ответить | Цитировать Сообщить модератору
 Re: Informatica. Организовать цикл по лог файлам  [new]
SpellBuilder
Member

Откуда: р.Москва, д.МО
Сообщений: 1895
HallucinogenLSD,
Получилось.

Спасибо всем откликнувшимся и направившим на путь истинный.
3 июн 11, 11:17    [10757649]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Informatica. Организовать цикл по лог файлам  [new]
шкафчик
Member

Откуда:
Сообщений: 105
А можно как-то указать динамическое имя файла, который нужно прочитать?
Например в папке источника будет лежать несколько файлов за разные даты, а нужно взять допустим за сегодняшнюю дату?

Нельзя как-то смастерить динамическое имя с помощью сисдэйт и конкатенации?

file20180402.csv
file20180403.csv
file20180405.csv
5 апр 18, 11:40    [21314416]     Ответить | Цитировать Сообщить модератору
Все форумы / OLAP и DWH Ответить