Как работает "supervisorctl tail" для данного процесса?

где supervisorctl tail возьмите информацию журнала определенного процесса из? Как получить полный журнал?

1 ответов


из командной строки помогите (supervisorctl help tail):

tail [-f] <name> [stdout|stderr] (default stdout)
Ex:
tail -f <name>          Continuous tail of named process stdout
                        Ctrl-C to exit.
tail -100 <name>        last 100 *bytes* of process stdout
tail <name> stderr      last 1600 *bytes* of process stderr

поэтому по умолчанию tail команда завершает процесс stdout. Если вам нужно получить полный лог, на [program:x] раздел определяет, где что хранится, есть stderr_logfile вариант также.

если этот параметр не установлен или установлен в AUTO, файл журнала будет создан при запуске процесса, но очищается всякий раз, когда supervisord перезапускается. Этот файл создается в набор каталог на [supervisord] childlogdir опции (который является TMP каталог по умолчанию), и сгенерированное имя вида <program-name>-<stdout|stderr>---<supervisor-identifier>-<6-random-characters>.log, например,varnish-stdout---supervisor-AqY52e.log.

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