У меня на сервере Windows 2012 R2 установлен IIS 8.5. Я пытаюсь удалить заголовок Server: Microsoft-IIS / 8.5 из своих ответов.
Я попытался установить URLScan, но он не установился из-за следующей ошибки
IIS Metabase is required to install Microsoft URLScan Filter v3.1.
Я попытался удалить его из настроек UrlRewrite на моем веб-сайте но это не работает. Может ли кто-нибудь помочь. command = python -c "print 'hello'" autostart = true autorestart = true коды выхода = 1 пользователь = ratdon ...
Я просто тестирую своего супервизора с простой конфигурацией программы:
[program:test]
command=python -c "print 'hello'"
autostart=true
autorestart=true
exitcodes=1
user=ratdon
stdout_logfile=/opt/log/test.log
stderr_logfile=/opt/log/test.log
Запуск моего супервизора как sudo supervisord -n -c /opt/supervisord.conf &
. Но после нескольких порождений он перестает порождать его снова.
2016-02-01 11:17:58,973 CRIT Supervisor running as root (no user in config file)
2016-02-01 11:17:58,973 WARN Included extra file "/opt/test.ini" during parsing
2016-02-01 11:17:58,994 INFO RPC interface 'supervisor' initialized
2016-02-01 11:17:58,994 CRIT Server 'inet_http_server' running without any HTTP authentication checking
2016-02-01 11:17:58,995 INFO supervisord started with pid 19644
2016-02-01 11:17:59,998 INFO spawned: 'test' with pid 19648
2016-02-01 11:18:00,026 INFO exited: test (exit status 0; not expected)
2016-02-01 11:18:01,030 INFO spawned: 'test' with pid 19650
2016-02-01 11:18:01,064 INFO exited: test (exit status 0; not expected)
2016-02-01 11:18:03,072 INFO spawned: 'test' with pid 19653
2016-02-01 11:18:03,104 INFO exited: test (exit status 0; not expected)
2016-02-01 11:18:06,108 INFO spawned: 'test' with pid 19657
2016-02-01 11:18:06,138 INFO exited: test (exit status 0; not expected)
2016-02-01 11:18:07,139 INFO gave up: test entered FATAL state, too many start retries too quickly
Я хочу, чтобы супервизор продолжал перезапускать программу, пока я не остановлю супервизор.
Возможно ли это? Если да, то как это сделать?
Есть ли возможность заставить супервизор регистрировать stdout
с меткой времени или нам нужно поместить метку времени в сам stdout
?
Я столкнулся с таким же случаем использования при работе в среде микрослужб Docker. В моём случае была возможность того, что Nginx начал работу до того, как появилась динамически сгенерированная конфигурация.
В настоящее время нет возможности позволить супервизору перезапускать службу бесконечно до тех пор, пока процесс не начнётся успешно.
Однако, существует возможность обходного пути с помощью опции startretries
. При использовании опции startretries
, супервайзер перезапустит заданное количество раз или до тех пор, пока процесс не начнется успешно.
В моем конкретном случае время выполнения условия гонки было меньше секунды, поэтому установки startretries=2
было достаточно. Однако при необходимости вы можете установить его в гораздо большее значение.
[program:test]
startretries=10
На самом деле лучший способ - назначить приоритет запущенной программе
[program:x]
priority=1
[program:y]
priority=2
, обратите внимание, что меньшие числа указывают на более высокий порядок запуска и, конечно, включают большое количество повторных попыток