Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 12, 2017 18:29:19

oreol
Зарегистрирован: 2016-07-03
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

Вывод вызываемой функции из в файл

В общем есть скрипт запускающий кучу других по циклу.
Можно ли как-то stderr (stdout) вызываемых скриптов выводить в определенный файл без изменений вызываемых функций?
Вариант через баш типа >/dev/null 2>&1 мне не подходит (нужен лог файл для каждого вызываемого скрипта с разными идентификаторами в названии)

Отредактировано oreol (Янв. 12, 2017 18:48:21)

Офлайн

#2 Янв. 12, 2017 20:10:31

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Вывод вызываемой функции из в файл

oreol
нужен лог файл для каждого вызываемого скрипта с разными идентификаторами в названии
А пример лога можно? Так непонятно что вы хотите. Что за названия? Для каждого? Это лог для каждого или идентификаторы для каждого?
oreol
Можно ли как-то stderr
Конечно можно, вариантов миллион.



Офлайн

#3 Янв. 13, 2017 10:28:29

oreol
Зарегистрирован: 2016-07-03
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

Вывод вызываемой функции из в файл

doza_and
лог запускаемого скрипта
2017-01-13 09:36:38.621193 domria_ki run
{'taken': 1, ‘saved’: 0, ‘processed’: 1}
2017-01-13 09:36:40.608997 domria_ki stop
2017-01-13 09:36:40.613774 domria_kh run
{'taken': 11, ‘saved’: 10, ‘processed’: 11}
2017-01-13 09:37:04.864896 domria_kh stop
Крохотный кусок лога stderr одной из вызываемых функций (писал не я)
DEBUG:django.db.backends0.003) SELECT `board_advert`.`id`, `board_advert`.`date_of_update` FROM `board_advert` WHERE (`board_advert`.`city_id` = 3 AND `board_advert`.`author_id` = 8606 AND `board_advert`.`category_id` = 17 AND `board_advert`.`link` = 'https://www.olx.ua/obyavlenie/prodam-kafe-ID9d4IF.html' ) ORDER BY `board_advert`.`date_of_update` DESC LIMIT 1; args3, 8606, 17, 'https://www.olx.ua/obyavlenie/prodam-kafe-ID9d4IF.html')
DEBUG:grab.network: GET https://www.olx.ua/nedvizhimost/arenda-kvartir/dnepr/?view=list
DEBUG:django.db.backends0.001) SELECT `board_advert`.`id`, `board_advert`.`date_of_update` FROM `board_advert` WHERE (`board_advert`.`city_id` = 3 AND `board_advert`.`author_id` = 8606 AND `board_advert`.`category_id` = 26 AND `board_advert`.`link` = 'https://www.olx.ua/obyavlenie/sdam-v-arendu-uchastok-IDotjMu.html' ) ORDER BY `board_advert`.`date_of_update` DESC LIMIT 1; args3, 8606, 26, 'https://www.olx.ua/obyavlenie/sdam-v-arendu-uchastok-IDotjMu.html')
DEBUG:grab.stat:RPS: 2.92
DEBUG:grab.network: GET https://www.olx.ua/nedvizhimost/arenda-komnat/dnepr/?view=list
DEBUG:django.db.backends0.001) SELECT `board_advert`.`id`, `board_advert`.`date_of_update` FROM `board_advert` WHERE (`board_advert`.`city_id` = 3 AND `board_advert`.`author_id` = 8606 AND `board_advert`.`category_id` = 21 AND `board_advert`.`link` = 'https://www.olx.ua/obyavlenie/srochno-sdam-1-kv-v-novostroe-na-kirova-27d-IDpGPAs.html' ) ORDER BY `board_advert`.`date_of_update` DESC LIMIT 1; args3, 8606, 21, 'https://www.olx.ua/obyavlenie/srochno-sdam-1-kv-v-novostroe-na-kirova-27d-IDpGPAs.html')
DEBUG:django.db.backends0.023) SELECT `board_advert`.`id`, `board_advert`.`date_of_update` FROM `board_advert` WHERE (`board_advert`.`city_id` = 3 AND `board_advert`.`author_id` = 8606 AND `board_advert`.`category_id` = 21 AND `board_advert`.`link` = 'https://www.olx.ua/obyavlenie/sdam-v-arendu-realnuyu-bolshuyu-1-kom-kvartiru-na-zh-m-frunzenskiy-IDpGOHy.html' ) ORDER BY `board_advert`.`date_of_update` DESC LIMIT 1; args3, 8606, 21, 'https://www.olx.ua/obyavlenie/sdam-v-arendu-realnuyu-bolshuyu-1-kom-kvartiru-na-zh-m-frunzenskiy-IDpGOHy.html')
DEBUG:django.db.backends0.001) SELECT `board_advert`.`id`, `board_advert`.`date_of_update` FROM `board_advert` WHERE (`board_advert`.`city_id` = 3 AND `board_advert`.`author_id` = 8606 AND `board_advert`.`category_id` = 21 AND `board_advert`.`link` = 'https://www.olx.ua/obyavlenie/cdam-2k-na-gagarina-IDpGPy0.html' ) ORDER BY `board_advert`.`date_of_update` DESC LIMIT 1; args3, 8606, 21, 'https://www.olx.ua/obyavlenie/cdam-2k-na-gagarina-IDpGPy0.html')

Отредактировано oreol (Янв. 13, 2017 10:29:51)

Офлайн

#4 Янв. 14, 2017 00:23:25

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Вывод вызываемой функции из в файл

У меня сложилось впечатление что вы хотите в один лог файл собрать вывод внешних процессов, но хотите его разметить сообщениями какой это процесс записал.

oreol
Вариант через баш типа >/dev/null 2>&1 мне не подходит

Но похоже вам подходит bash вариант типа “2>>” добавление данных в конец существующего файла. Перед вызовами сторонних программ просто аппендите в этот файл нужную вам разметку и сообщения об источнике вывода.




Офлайн

#5 Янв. 14, 2017 19:35:22

oreol
Зарегистрирован: 2016-07-03
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

Вывод вызываемой функции из в файл

doza_and
У меня сложилось впечатление что вы хотите в один лог файл собрать вывод внешних процессов, но хотите его разметить сообщениями какой это процесс записал.
А кроме баш вывода 2>>. Просто если так сделать то будет весь лог по всем скриптам, а это очень неудобно. А писать скрипт на обработку этого огромного файла (даже если за день/час) совсем не хочется (+ дополнительная нагрузка/ задача в крон не нужна)

Отредактировано oreol (Янв. 14, 2017 19:35:42)

Офлайн

#6 Янв. 14, 2017 20:58:57

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Вывод вызываемой функции из в файл

Приветите пожалуйста пример что конкретно вы хотите получить. ведь непонятно.Я именно об этом писал раньше.



Отредактировано doza_and (Янв. 14, 2017 20:59:51)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version