Проект

Общее

Профиль

Заявки #129

открыто
AP

artem

Заявки #129: artem

Добавил(а) Alexandr Pozdnyakov 23 дня назад. Обновлено 18 дня назад.

Статус:
В работе
Приоритет:
Обычный
Назначена:
Дата начала:
21.05.2026
Срок завершения:
Готовность:

0%

Оценка временных затрат:

Описание

А у тебя там процессы живые?

ArtemGodzenko
20 мая 2026 г., 19:24
смотрю

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:24
:# docker exec -ti eb75ed49d69d bash
root@fin:
# ps auxwf
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 72226 0.6 0.0 4240 3544 pts/1 Ss 16:24 0:00 bash
root 72234 0.0 0.0 5892 2864 pts/1 R+ 16:24 0:00 _ ps auxwf
root 1 0.0 0.0 3976 3008 pts/0 Ss+ May19 0:00 /bin/bash /cmd.sh
root 108 0.0 0.1 12188 7204 pts/0 S+ May19 0:02 sshd: /usr/sbin/sshd -D -p 22322 [listener] 0 of 10-100 startups
root@fin:~#
Не вижу
Так их как то в автостарт может ?
up 20:53,

ArtemGodzenko
20 мая 2026 г., 19:25
ты же этот смотришь? 91.186.210.191

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:25
21 час назад ребут был
:~# curl 2ip.io
91.186.210.191
Да

ArtemGodzenko
20 мая 2026 г., 19:27
да, пустой список процессов возвращается
а почему был рестарт?

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:27
Ложился сегмент в Финке
Ребутались ноды
Может как то автоматизируем старт ?

ArtemGodzenko
20 мая 2026 г., 19:30
если я повторно отправлю команду
./run.sh play filename namespace url
что будет?

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:30
Думаю что запустит плей. Я же скрипт не ковырял.
Ты обычно как запускал?

ArtemGodzenko
20 мая 2026 г., 19:31
вопрос в том, он создаст второй поток или перезапустит первый

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:31
ns у нас все созданы как и были
так потоков то нет с сервера
В процессах же пусто

ArtemGodzenko
20 мая 2026 г., 19:31
сейчас да

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:31
А, ты про автоматизацию ?

ArtemGodzenko
20 мая 2026 г., 19:31
а если будет ложное срабатывание и прилетит команда
да, про перезапуск

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:32
Давай протестим
ПОка потоков нет
Но можно написать и килл всех потоков и старт их с 0

ArtemGodzenko
20 мая 2026 г., 19:32
они сейчас перезапустят

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:32
Если у нас рестарт контейнера, или его старт, или апгрейд

ArtemGodzenko
20 мая 2026 г., 19:33
Давай протестим
не у компа несколько дней

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:33
(
А на "той" стороне как должны их запускать?
Там же вроде в youtube студии, просто прописывается поток ?

ArtemGodzenko
20 мая 2026 г., 19:34
Clipboard - May 20, 2026 6:34 PM.png
(195.01 kB)

запускаются они через нашу админку
из ютюб студии только адрес стрима берется и к нам добавляется

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:34
А через админку может как то просто дергать можно в скрипт ?

ArtemGodzenko
20 мая 2026 г., 19:34
так я так и делаю

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:34
+

ArtemGodzenko
20 мая 2026 г., 19:35
там есть такие команды:
./run.sh play filename namespace url | play stream
./run.sh stop url | stop stream
./run.sh ps | show all ffmpeg processes
./run.sh delete filename | stop stream if run and delete filename
./run.sh namespaces | show namespace ip
./run.sh ls | покажет все что в /root/data
автоматизация перезапуска - это дернуть повторно play если нет процесса
но нужна защита от того, что если с таким url (ютюб rtmp ссылка) уже есть процесс, то игнорировать команду и не запускать дубль
автоматизация перезапуска - это дернуть повторно play если нет процесса
то есть мой скрипт в админке получает список процессов с сервера, не находит нужного, дергает play

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:37
так это с твоей стороны тогда
а чего он не дернул его ?

ArtemGodzenko
20 мая 2026 г., 19:38
сейчас там не прописан перезапуск
так это с твоей стороны тогда
я понимаю, но нужна защита от повторного запуска на стороне сервера
можно для перезапуска сделать другую команду - replay - теми же параметрами

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:39
Оок. Я посмотрю тогда скрипт, если сделать replay(restart) - то там будет логика - есть процесс, стопаем, стартуем. Нет процесса - стартуем.

ArtemGodzenko
20 мая 2026 г., 19:40
защита нужна для того, чтобы, например, если глюкнула сеть и запрос на список процессов вернул ошибку или пустоту, и мой скрипт отправил команду перезапуска, то не запустились дубли

AlexandrPozdnyakov
20.05.2026
Оок. Я посмотрю тогда скрипт, если сделать replay(restart) - то там будет логика - есть процесс, стопаем, стартуем. Нет процесса - стартуем.
ага

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:40
А у тебя там уже будет дергаться либо плей, либо рестарт

ArtemGodzenko
20 мая 2026 г., 19:41
Оок. Я посмотрю тогда скрипт, если сделать replay(restart) - то там будет логика - есть процесс, стопаем, стартуем. Нет процесса - стартуем.
хотя не совсем так. если есть процесс, мы его не трогаем. если нет - стартуем. ютюб не любит обрыва потока и может у себя остановить стрим

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:41
Так тогда не проще play оставит ?
Если плей есть - и есть процесс, не трогаем
Если плей но процесса нет - запускаем

ArtemGodzenko
20 мая 2026 г., 19:41
можно и так

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:41
+

ArtemGodzenko
20 мая 2026 г., 19:41
но надо дописать проверку в плей наличия процесса

AlexandrPozdnyakov
Admin
20 мая 2026 г., 19:42
Т.е. при отправке play команды, мы проверяем наличие процесса
есть - в лог, был плей но процесс есть. нет - запуск.
Хорошо. Я посмотрю скрипт и подправлю

AP Обновлено Alexandr Pozdnyakov 18 дня назад Действия #1

  • Параметр Статус изменился с Новая на В работе

Выкатил в ветку dev - жду от Артема отмашки на проверку.

Экспортировать в PDF Atom