170 похожих чатов

Подскажите, такое вообще возможно: есть длинная задача, по окончании которой

нода закрывается (типа длинного парсера/обработчика). Хочу все console.log отправлять через сокет на другой комп. В начале работы процесса "перехватываю" консоль, поднимаю сокет-клиент и транслирую. Но после окончания задачи, нода "не прерывается" ибо сокет продолжает "удерживать процесс", "слушая входящие"(которых не бывает). Можно ли без команды "остановить сокет" сделать так чтобы весь сокет был "отдельно" от основного процесса? Или чтобы process.on('exit' вызывался даже если он еще работает? Может в независимый поток его отправить? или в чаилд-процесс?

10 ответов

35 просмотров

основная задача просто отправка логов? в гугле как вариант выдаёт npm install console-remote-client. Или именно нужно сокеты?

Andriy-F Автор вопроса
Anton
основная задача просто отправка логов? в гугле как...

Проект пока на стадии "задумки". В идеале хочу в проекты "подключать маленький модуль" на стадии отладки и... все! И ловить результаты на соседнем компе(мониторе) в красивом отладчике. Сокет наладил, кое-как начал отсылать содержимое консоли (предстоит еще повоевать с отправкой того что JSON не упаковывается - функции, сложно-вложенные объекты). Но после "отработки" Нода перестала "выходить" и теперь просто "висит" в конце. Прежде чем двигаться дальше - хочу понять реально ли на сокетах все-таки подобное сделать?

я думаю можно если заморочится. Но надо ли )

Andriy-F Автор вопроса
Anton
я думаю можно если заморочится. Но надо ли )

А почему бы и нет? ))) Есть (текущая) задача ,которая сейчас выводит МНОГО логов. Глаза устают на "рабочем" компе это изучать. Хочу на соседний отправить "маловажное". А заодно понять/придумать как можно "слабосвязанные" задачи запускать. По идее подобное может еще когда не будь пригодится.

От лишних логов есть уровни логов, причём их можно отделять по цветам, префиксам, и транспортам (в винстоне например)

Andriy-F Автор вопроса

Это не "нодовское" решение! ))) Вопрос - именно транслировать "в фоне" не "вредя" ходу выполнения основного проекта. А смотреть через SSH - не решение! Процесс может быть и быстрым и долгим, а каждый раз перезапуске процесса "перезагружать что-то в SSH вручную" - нудотно... Особенно на стадии отладки ("на винде работало, а на линуксе вдруг какие-то проблемы")

Andriy-F Автор вопроса
🅰️nimeCoder
От лишних логов есть уровни логов, причём их можно...

Я хочу большего - вывести Ноде -консоль в БРАУЗЕР! Не в консоль браузера, а на "спец-страницу", где можно и со шрифтами поиграться, и с зумом, и со стилями... и "сложные фильтры" настраивать ))

Andriy F
Это не "нодовское" решение! ))) Вопрос - именно тр...

а можно сразу на линуксе писать))) минус точка отказа

а если сделать так, чтобы stdout был подключён к процессу, который занимается отправкой логов?

Andriy-F Автор вопроса
John Doe
а если сделать так, чтобы stdout был подключён к п...

Думал об этом, но пока не придумал как... Во первых похоже тогда придется создавать целую "отдельную ПРОГРАММУ", к которой придется "подключать". Во вторых она должна быть либо запущена, либо вызываться как чайлд-процесс. Если это чайлд-процесс, то не понятно, что будет при остановке основного процесса (подозреваю что будет "дожидаться" окончания подчиненного - надо тестить), а если "чужой процесс", то не понятно как сделать "мультиосную" связь двух "не связанных" процессов. Поэтому и хочу для начала попробовать сделать максимально "нодовскими" методами, прежде чем переходить "меж-процессорным".

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

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта