Назад | Перейти на главную страницу

Как проверить вывод команды salt, которая выполняется в фоновом режиме?

У меня есть сценарий соли, написанный кем-то другим, который выполняет кучу команд. Работает очень долго. Мое соединение с машиной, на которой он работает, оборвалось, но оно все еще работает. Как мне вернуться к нему и посмотреть, что он делает? Я не запускал его с помощью screen.

Вот как выглядит команда:

$ salt --subset=1 -C 'G@application:foo and G@roles:application and G@vpc:staging' state.sls foo.commands.application.export

Есть группа хостов, которые играют роль применение и этот материал работает хорошо. Я отслеживаю результат того, что он делает (помещает в очередь) где-то еще.

Я считаю, что ищу какой-то "проверить статус запущенного скрипта соли"но не смог найти этого в документации.

я бегу salt 2014.1.13 (Hydrogen) на Ubuntu 14.04.1 LTS.

Используйте кеш заданий.

Сначала перечислите недавние вакансии с jobs.active или jobs.list_jobs.

$ sudo salt-run jobs.list_jobs
Обратите внимание, я включил сюда только одну запись

'20141204125446199193':
  Arguments:
  - salt-ssh production cmd.run_all bash /home/Administrator/bin/weekly-product-build.sh
  Function: cmd.run_all
  StartTime: 2014, Dec 04 12:54:46.199193
  Target: lead
  Target-type: glob
  User: root

Затем получите возвращенный результат для конкретного jid:

$ sudo salt-run jobs.lookup_jid 20141204125446199193 | голова -22

lead:
    ----------
    pid:
        2301
    retcode:
        0
    stderr:

    stdout:
        production:
            ----------
            pid:
                688
            retcode:
                1
            stderr:
                + case $(date +%a) in
                ++ date +%a
                ++ date -d Thursday +%F
                + TARGET_DATE=2014-12-04
                ++ date -d 2014-12-04 +%Y%m%d
                + ymd=20141204