Я создаю PHP-скрипт, который выполняется в бесконечном цикле (пока не получит SIGINT, SIGTERM или SIGHUP), который предназначен для запуска в контейнере Docker.
Я также добавил простой хук SIGUSR1, который просто напечатает некоторую статистику по запущенному заданию. Когда я отправляю SIGUSR1 на работу с kill -29 [PID]
обработчик запускает и выводит упомянутые данные, но, к сожалению, выводит их на консоль, которая служит в качестве STDOUT, а не на консоль, отправляющую уничтожение.
Как мне отправлять вывод сценария на консоль, которая выдает команду уничтожения SIGUSR1 вместо STDOUT?
Перенаправить вывод в файл?
$ php endless.php > /tmp/endless_output &
в другом семестре:
$ kill -29 [PID]; cat /tmp/endless_output
Возможно, стоит использовать именованная труба вместо обычного файла.
Других решений пока нет …