Salt: Cannot listen to directory for changes, can only watch

Created on 21 Sep 2015  路  10Comments  路  Source: saltstack/salt

So I know I can watch a directory for changes, but I would like to trigger a service restart at the end of a salt run with listen. Unfortunately, that does not appear to be supported.

Salt returns the following

----------
          ID: listen_/etc/sensu/conf.d*
    Function: Listen_Error.Listen_Error
        Name: listen_file
      Result: False
     Comment: Referenced state file: /etc/sensu/conf.d* does not exist
     Started:
    Duration:
     Changes:

and the corresponding snippet from my SLS file

sensu-client:
  service.running:
   [...]
    - listen:
      - file: /etc/sensu/conf.d/*

For the short term, I will revert back to watch, but I feel like this behavior should also exist for listen.

Related issue: https://github.com/saltstack/salt/issues/663

Bug Core Needs Testcase P2 severity-medium stale

Most helpful comment

same behavior here, 2016.3.2

All 10 comments

@rodriguezsergio, thanks for the report. What version of salt are you using? Is it possible to post the debug log output of the minion when you run this state? Thanks.

I'm running salt-minion 2015.5.3 (Lithium).

local:
----------
          ID: sensu
    Function: pkgrepo.managed
      Result: True
     Comment: Package repo 'sensu' already configured
     Started: 18:05:00.604661
    Duration: 2.597 ms
     Changes:
----------
          ID: sensu
    Function: pkg.installed
      Result: True
     Comment: Package sensu is already installed.
     Started: 18:05:00.607679
    Duration: 1068.483 ms
     Changes:
----------
          ID: /etc/sensu/conf.d/rabbitmq.json
    Function: file.managed
      Result: True
     Comment: File /etc/sensu/conf.d/rabbitmq.json is in the correct state
     Started: 18:05:01.679566
    Duration: 53.252 ms
     Changes:
----------
          ID: /etc/sensu/conf.d/transport.json
    Function: file.managed
      Result: True
     Comment: File /etc/sensu/conf.d/transport.json is in the correct state
     Started: 18:05:01.733368
    Duration: 3.761 ms
     Changes:
----------
          ID: /etc/sensu/conf.d/pagerduty.json
    Function: file.managed
      Result: True
     Comment: File /etc/sensu/conf.d/pagerduty.json is in the correct state
     Started: 18:05:01.737583
    Duration: 35.377 ms
     Changes:
----------
          ID: /etc/sensu/conf.d/redis.json
    Function: file.managed
      Result: True
     Comment: File /etc/sensu/conf.d/redis.json is in the correct state
     Started: 18:05:01.773470
    Duration: 38.452 ms
     Changes:
----------
          ID: create-checks.d-dir
    Function: file.directory
        Name: /etc/sensu/conf.d/checks.d
      Result: True
     Comment: Directory /etc/sensu/conf.d/checks.d is in the correct state
     Started: 18:05:01.812252
    Duration: 1.195 ms
     Changes:
----------
          ID: /etc/sensu/conf.d/checks.d
    Function: file.recurse
      Result: True
     Comment: The directory /etc/sensu/conf.d/checks.d is in the correct state
     Started: 18:05:01.813872
    Duration: 153.86 ms
     Changes:
----------
          ID: create-handlers.d-dir
    Function: file.directory
        Name: /etc/sensu/conf.d/handlers.d
      Result: True
     Comment: Directory /etc/sensu/conf.d/handlers.d is in the correct state
     Started: 18:05:01.968034
    Duration: 1.114 ms
     Changes:
----------
          ID: /etc/sensu/conf.d/handlers.d
    Function: file.recurse
      Result: True
     Comment: The directory /etc/sensu/conf.d/handlers.d is in the correct state
     Started: 18:05:01.969661
    Duration: 59.154 ms
     Changes:
----------
          ID: /etc/sensu/extensions
    Function: file.recurse
      Result: True
     Comment: The directory /etc/sensu/extensions is in the correct state
     Started: 18:05:02.029282
    Duration: 27.268 ms
     Changes:
----------
          ID: /etc/sensu/mutators
    Function: file.recurse
      Result: True
     Comment: The directory /etc/sensu/mutators is in the correct state
     Started: 18:05:02.057019
    Duration: 22.115 ms
     Changes:
----------
          ID: /etc/sensu/handlers
    Function: file.recurse
      Result: True
     Comment: The directory /etc/sensu/handlers is in the correct state
     Started: 18:05:02.079602
    Duration: 28.917 ms
     Changes:
----------
          ID: sensu-server
    Function: service.running
      Result: True
     Comment: Service sensu-server is already enabled, and is in the desired state
     Started: 18:05:02.112830
    Duration: 218.017 ms
     Changes:
----------
          ID: install-redphone-gem
    Function: cmd.run
        Name: /opt/sensu/embedded/bin/gem install redphone
      Result: True
     Comment: unless execution succeeded
     Started: 18:05:02.341449
    Duration: 49.112 ms
     Changes:
----------
          ID: install-hipchat-gem
    Function: cmd.run
        Name: /opt/sensu/embedded/bin/gem install hipchat
      Result: True
     Comment: unless execution succeeded
     Started: 18:05:02.391085
    Duration: 49.608 ms
     Changes:
----------
          ID: listen_/etc/sensu/conf.d*
    Function: Listen_Error.Listen_Error
        Name: listen_file
      Result: False
     Comment: Referenced state file: /etc/sensu/conf.d* does not exist
     Started:
    Duration:
     Changes:

Summary
-------------
Succeeded: 16
Failed:     1
-------------
Total states run:     17

Do you need the log output to be more verbose than this?

@rodriguezsergio, thanks for the information. What I need is the debug log information from the minion /var/log/salt/minion and also possibly the master /var/log/salt/master from the state run:

salt-master # tail -F /var/log/salt/master
salt-minion # tail -F /var/log/salt/minion
salt-master # run highstate

observe logs during highstate run.

The master does not output anything during the state run.

/var/log/salt/minion output

2015-09-23 11:18:19,284 [salt.config      ][DEBUG   ][28136] Reading configuration from /etc/salt/minion
2015-09-23 11:18:19,383 [salt.config      ][DEBUG   ][28136] Including configuration from '/etc/salt/minion.d/99-master-address.conf'
2015-09-23 11:18:19,383 [salt.config      ][DEBUG   ][28136] Reading configuration from /etc/salt/minion.d/99-master-address.conf
2015-09-23 11:18:19,384 [salt.config      ][DEBUG   ][28136] Including configuration from '/etc/salt/minion.d/_schedule.conf'
2015-09-23 11:18:19,384 [salt.config      ][DEBUG   ][28136] Reading configuration from /etc/salt/minion.d/_schedule.conf
2015-09-23 11:18:19,386 [salt.config      ][DEBUG   ][28136] Including configuration from '/etc/salt/minion.d/salt-log-level.conf'
2015-09-23 11:18:19,386 [salt.config      ][DEBUG   ][28136] Reading configuration from /etc/salt/minion.d/salt-log-level.conf
2015-09-23 11:18:19,387 [salt.config      ][DEBUG   ][28136] Including configuration from '/etc/salt/minion.d/salt-mine.conf'
2015-09-23 11:18:19,387 [salt.config      ][DEBUG   ][28136] Reading configuration from /etc/salt/minion.d/salt-mine.conf
2015-09-23 11:18:19,658 [salt.loaded.int.grains.core][DEBUG   ][28136] The `dmidecode` binary is not available on the system. GPU grains will not be available.
2015-09-23 11:18:21,132 [salt.crypt       ][DEBUG   ][28136] Initializing new SAuth for ('/etc/salt/pki/minion', 'i-12345678', 'tcp://1.2.3.4:port')
2015-09-23 11:18:21,200 [salt.crypt       ][DEBUG   ][28136] Decrypting the current master AES key
2015-09-23 11:18:21,201 [salt.crypt       ][DEBUG   ][28136] Loaded minion key: /etc/salt/pki/minion/minion.pem
2015-09-23 11:18:21,385 [salt.crypt       ][DEBUG   ][28136] Loaded minion key: /etc/salt/pki/minion/minion.pem
2015-09-23 11:18:21,473 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded jinja.render
2015-09-23 11:18:21,474 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded yaml.render
2015-09-23 11:18:21,487 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded state.sls
2015-09-23 11:18:21,502 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded saltutil.is_running
2015-09-23 11:18:21,503 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded grains.get





2015-09-23 11:18:21,505 [salt.crypt       ][DEBUG   ][28136] Re-using SAuth for ('/etc/salt/pki/minion', 'i-12345678', 'tcp://1.2.3.4:port')
2015-09-23 11:18:21,527 [salt.config      ][DEBUG   ][28136] Reading configuration from /etc/salt/minion
2015-09-23 11:18:21,609 [salt.config      ][DEBUG   ][28136] Including configuration from '/etc/salt/minion.d/99-master-address.conf'
2015-09-23 11:18:21,617 [salt.config      ][DEBUG   ][28136] Reading configuration from /etc/salt/minion.d/99-master-address.conf
2015-09-23 11:18:21,618 [salt.config      ][DEBUG   ][28136] Including configuration from '/etc/salt/minion.d/_schedule.conf'
2015-09-23 11:18:21,619 [salt.config      ][DEBUG   ][28136] Reading configuration from /etc/salt/minion.d/_schedule.conf
2015-09-23 11:18:21,620 [salt.config      ][DEBUG   ][28136] Including configuration from '/etc/salt/minion.d/salt-log-level.conf'
2015-09-23 11:18:21,620 [salt.config      ][DEBUG   ][28136] Reading configuration from /etc/salt/minion.d/salt-log-level.conf
2015-09-23 11:18:21,621 [salt.config      ][DEBUG   ][28136] Including configuration from '/etc/salt/minion.d/salt-mine.conf'
2015-09-23 11:18:21,621 [salt.config      ][DEBUG   ][28136] Reading configuration from /etc/salt/minion.d/salt-mine.conf
2015-09-23 11:18:21,886 [salt.loaded.int.grains.core][DEBUG   ][28136] The `dmidecode` binary is not available on the system. GPU grains will not be available.
2015-09-23 11:18:23,135 [salt.crypt       ][DEBUG   ][28136] Re-using SAuth for ('/etc/salt/pki/minion', 'i-12345678', 'tcp://1.2.3.4:port')
2015-09-23 11:18:23,187 [salt.crypt       ][DEBUG   ][28136] Loaded minion key: /etc/salt/pki/minion/minion.pem
2015-09-23 11:18:23,249 [salt.state       ][INFO    ][28136] Loading fresh modules for state activity
2015-09-23 11:18:23,270 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded jinja.render
2015-09-23 11:18:23,279 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded yaml.render
2015-09-23 11:18:23,283 [salt.fileclient  ][DEBUG   ][28136] Fetching file from saltenv 'base', ** attempting ** 'salt://test/server.sls'
2015-09-23 11:18:23,287 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** done ** 'test/server.sls'
2015-09-23 11:18:23,289 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded cmd.run
2015-09-23 11:18:23,289 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:23,304 [salt.template    ][DEBUG   ][28136] Rendered data from file: /var/cache/salt/minion/files/base/test/server.sls:
include:
  - sensu
  - sensu.rabbitmq_conf

/etc/sensu/conf.d/transport.json:
  file.managed:
    - source: salt://sensu/files/transport.json
    - user: root
    - group: root
    - mode: 644
    - require:
      - pkg: sensu





/etc/sensu/conf.d/pagerduty.json:
  file.managed:
    - source: salt://sensu/files/pagerduty.json
    - template: jinja
    - user: root
    - group: root
    - mode: 644
    - require:
      - pkg: sensu

/etc/sensu/conf.d/redis.json:
  file.managed:
    - source: salt://sensu/files/redis.json
    - template: jinja
    - user: root
    - group: root
    - mode: 644
    - require:
      - pkg: sensu


create-checks.d-dir:
  file.directory:
    - name: /etc/sensu/conf.d/checks.d
    - mode: 755




/etc/sensu/conf.d/checks.d:
  file.recurse:
    - user: root
    - group: root
    - clean: True
    - source: salt://sensu/files/conf.d/checks.d
    - template: jinja
    - require:
      - pkg: sensu
    - require_in:
      - service: sensu-server

create-handlers.d-dir:
  file.directory:
    - name: /etc/sensu/conf.d/handlers.d
    - mode: 755

/etc/sensu/conf.d/handlers.d:
  file.recurse:
    - user: root
    - group: root
    - clean: True
    - source: salt://sensu/files/conf.d/handlers.d
    - template: jinja
    - require:
      - pkg: sensu
    - require_in:
      - service: sensu-server






/etc/sensu/extensions:
  file.recurse:
    - source: salt://sensu/files/extensions
    - clean: True
    - file_mode: 555
    - require:
      - pkg: sensu
    - require_in:
      - service: sensu-server
    - listen_in:
      - service: sensu-server

/etc/sensu/mutators:
  file.recurse:
    - source: salt://sensu/files/mutators
    - clean: True
    - file_mode: 555
    - require:
      - pkg: sensu
    - require_in:
      - service: sensu-server
    - listen_in:
      - service: sensu-server

/etc/sensu/handlers:
  file.recurse:
    - source: salt://sensu/files/handlers
    - clean: True
    - file_mode: 555
    - require:
      - pkg: sensu
    - require_in:
      - service: sensu-server
    - listen_in:
      - service: sensu-server




sensu-server:
  service.running:
    - enable: True
    - require:
      - file: /etc/sensu/conf.d/redis.json
      - file: /etc/sensu/conf.d/rabbitmq.json
    - listen:
      - file: /etc/sensu/conf.d*

install-redphone-gem:
  cmd.run:
    - name: /opt/sensu/embedded/bin/gem install redphone
    - unless: "test -e /opt/sensu/embedded/lib/ruby/gems/2.0.0/doc/redphone-0.0.6"

install-hipchat-gem:
  cmd.run:
    - name: /opt/sensu/embedded/bin/gem install hipchat
    - unless: "test -e /opt/sensu/embedded/lib/ruby/gems/2.0.0/doc/hipchat-1.4.0"









2015-09-23 11:18:23,379 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded config.get
2015-09-23 11:18:23,380 [salt.loaded.int.render.yaml][DEBUG   ][28136] Results of YAML rendering:
OrderedDict([('include', ['sensu', 'sensu.rabbitmq_conf']), ('/etc/sensu/conf.d/transport.json', OrderedDict([('file.managed', [OrderedDict([('source', 'salt://sensu/files/transport.json')]), OrderedDict([('user', 'root')]), OrderedDict([('group', 'root')]), OrderedDict([('mode', 644)]), OrderedDict([('require', [OrderedDict([('pkg', 'sensu')])])])])])), ('/etc/sensu/conf.d/pagerduty.json', OrderedDict([('file.managed', [OrderedDict([('source', 'salt://sensu/files/pagerduty.json')]), OrderedDict([('template', 'jinja')]), OrderedDict([('user', 'root')]), OrderedDict([('group', 'root')]), OrderedDict([('mode', 644)]), OrderedDict([('require', [OrderedDict([('pkg', 'sensu')])])])])])), ('/etc/sensu/conf.d/redis.json', OrderedDict([('file.managed', [OrderedDict([('source', 'salt://sensu/files/redis.json')]), OrderedDict([('template', 'jinja')]), OrderedDict([('user', 'root')]), OrderedDict([('group', 'root')]), OrderedDict([('mode', 644)]), OrderedDict([('require', [OrderedDict([('pkg', 'sensu')])])])])])), ('create-checks.d-dir', OrderedDict([('file.directory', [OrderedDict([('name', '/etc/sensu/conf.d/checks.d')]), OrderedDict([('mode', 755)])])])), ('/etc/sensu/conf.d/checks.d', OrderedDict([('file.recurse', [OrderedDict([('user', 'root')]), OrderedDict([('group', 'root')]), OrderedDict([('clean', True)]), OrderedDict([('source', 'salt://sensu/files/conf.d/checks.d')]), OrderedDict([('template', 'jinja')]), OrderedDict([('require', [OrderedDict([('pkg', 'sensu')])])]), OrderedDict([('require_in', [OrderedDict([('service', 'sensu-server')])])])])])), ('create-handlers.d-dir', OrderedDict([('file.directory', [OrderedDict([('name', '/etc/sensu/conf.d/handlers.d')]), OrderedDict([('mode', 755)])])])), ('/etc/sensu/conf.d/handlers.d', OrderedDict([('file.recurse', [OrderedDict([('user', 'root')]), OrderedDict([('group', 'root')]), OrderedDict([('clean', True)]), OrderedDict([('source', 'salt://sensu/files/conf.d/handlers.d')]), OrderedDict([('template', 'jinja')]), OrderedDict([('require', [OrderedDict([('pkg', 'sensu')])])]), OrderedDict([('require_in', [OrderedDict([('service', 'sensu-server')])])])])])), ('/etc/sensu/extensions', OrderedDict([('file.recurse', [OrderedDict([('source', 'salt://sensu/files/extensions')]), OrderedDict([('clean', True)]), OrderedDict([('file_mode', 555)]), OrderedDict([('require', [OrderedDict([('pkg', 'sensu')])])]), OrderedDict([('require_in', [OrderedDict([('service', 'sensu-server')])])]), OrderedDict([('listen_in', [OrderedDict([('service', 'sensu-server')])])])])])), ('/etc/sensu/mutators', OrderedDict([('file.recurse', [OrderedDict([('source', 'salt://sensu/files/mutators')]), OrderedDict([('clean', True)]), OrderedDict([('file_mode', 555)]), OrderedDict([('require', [OrderedDict([('pkg', 'sensu')])])]), OrderedDict([('require_in', [OrderedDict([('service', 'sensu-server')])])]), OrderedDict([('listen_in', [OrderedDict([('service', 'sensu-server')])])])])])), ('/etc/sensu/handlers', OrderedDict([('file.recurse', [OrderedDict([('source', 'salt://sensu/files/handlers')]), OrderedDict([('clean', True)]), OrderedDict([('file_mode', 555)]), OrderedDict([('require', [OrderedDict([('pkg', 'sensu')])])]), OrderedDict([('require_in', [OrderedDict([('service', 'sensu-server')])])]), OrderedDict([('listen_in', [OrderedDict([('service', 'sensu-server')])])])])])), ('sensu-server', OrderedDict([('service.running', [OrderedDict([('enable', True)]), OrderedDict([('require', [OrderedDict([('file', '/etc/sensu/conf.d/redis.json')]), OrderedDict([('file', '/etc/sensu/conf.d/rabbitmq.json')])])]), OrderedDict([('listen', [OrderedDict([('file', '/etc/sensu/conf.d*')])])])])])), ('install-redphone-gem', OrderedDict([('cmd.run', [OrderedDict([('name', '/opt/sensu/embedded/bin/gem install redphone')]), OrderedDict([('unless', 'test -e /opt/sensu/embedded/lib/ruby/gems/2.0.0/doc/redphone-0.0.6')])])])), ('install-hipchat-gem', OrderedDict([('cmd.run', [OrderedDict([('name', '/opt/sensu/embedded/bin/gem install hipchat')]), OrderedDict([('unless', 'test -e /opt/sensu/embedded/lib/ruby/gems/2.0.0/doc/hipchat-1.4.0')])])]))])
2015-09-23 11:18:23,383 [salt.fileclient  ][DEBUG   ][28136] Could not find file from saltenv 'base', 'salt://sensu.sls'
2015-09-23 11:18:23,385 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache 'salt://sensu/init.sls'
2015-09-23 11:18:23,386 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:23,391 [salt.template    ][DEBUG   ][28136] Rendered data from file: /var/cache/salt/minion/files/base/sensu/init.sls:



sensu:
  pkgrepo.managed:
    - humanname: Sensu Repository
    - baseurl: http://repos.sensuapp.org/yum/el/6/$basearch/
    - gpgcheck: 0
    - enabled: 1

  pkg:
    - installed
    - require:
      - pkgrepo: sensu


2015-09-23 11:18:23,402 [salt.loaded.int.render.yaml][DEBUG   ][28136] Results of YAML rendering:
OrderedDict([('sensu', OrderedDict([('pkgrepo.managed', [OrderedDict([('humanname', 'Sensu Repository')]), OrderedDict([('baseurl', 'http://repos.sensuapp.org/yum/el/6/$basearch/')]), OrderedDict([('gpgcheck', 0)]), OrderedDict([('enabled', 1)])]), ('pkg', ['installed', OrderedDict([('require', [OrderedDict([('pkgrepo', 'sensu')])])])])]))])
2015-09-23 11:18:23,409 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache 'salt://sensu/rabbitmq_conf.sls'
2015-09-23 11:18:23,409 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:23,412 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded pillar.get
2015-09-23 11:18:23,412 [salt.template    ][DEBUG   ][28136] Rendered data from file: /var/cache/salt/minion/files/base/sensu/rabbitmq_conf.sls:
include:
  - sensu


  /etc/sensu/conf.d/rabbitmq.json:
  file.managed:
    - source: salt://sensu/files/rabbitmq.json
    - template: jinja
    - user: root
    - group: root
    - mode: 644

2015-09-23 11:18:23,415 [salt.loaded.int.render.yaml][DEBUG   ][28136] Results of YAML rendering:
OrderedDict([('include', ['sensu']), ('/etc/sensu/conf.d/rabbitmq.json', OrderedDict([('file.managed', [OrderedDict([('source', 'salt://sensu/files/rabbitmq.json')]), OrderedDict([('template', 'jinja')]), OrderedDict([('user', 'root')]), OrderedDict([('group', 'root')]), OrderedDict([('mode', 644)])])]))])
2015-09-23 11:18:23,430 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded pkg.install
2015-09-23 11:18:23,430 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded pkg.installed
2015-09-23 11:18:23,638 [salt.loader      ][DEBUG   ][28136] Error loading module.ipmi: No module named pyghmi.ipmi
2015-09-23 11:18:23,687 [salt.loader      ][DEBUG   ][28136] Error loading module.nacl: libnacl import error, perhaps missing python libnacl package
2015-09-23 11:18:23,732 [salt.loader      ][DEBUG   ][28136] Error loading module.tls: ['PyOpenSSL version 0.14 or later must be installed before  this module can be used.']


2015-09-23 11:18:23,754 [salt.loader      ][DEBUG   ][28136] Error loading module.npm: npm execution module could not be loaded because the npm binary could not be located
2015-09-23 11:18:24,236 [salt.utils.lazy  ][DEBUG   ][28136] Could not LazyLoad pkg.ex_mod_init
2015-09-23 11:18:24,239 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded pkgrepo.managed
2015-09-23 11:18:24,239 [salt.state       ][INFO    ][28136] Running state [sensu] at time 11:18:24.239025
2015-09-23 11:18:24,239 [salt.state       ][INFO    ][28136] Executing state pkgrepo.managed for sensu
2015-09-23 11:18:24,240 [salt.loaded.int.module.yumpkg][DEBUG   ][28136] Searching for repos in ['/etc/yum/repos.d', '/etc/yum.repos.d']
2015-09-23 11:18:24,241 [salt.state       ][INFO    ][28136] Package repo 'sensu' already configured
2015-09-23 11:18:24,241 [salt.state       ][INFO    ][28136] Completed state [sensu] at time 11:18:24.241315
2015-09-23 11:18:24,242 [salt.state       ][INFO    ][28136] Running state [sensu] at time 11:18:24.241740
2015-09-23 11:18:24,242 [salt.state       ][INFO    ][28136] Executing state pkg.installed for sensu
2015-09-23 11:18:24,243 [salt.loaded.int.module.cmdmod][INFO    ][28136] Executing command "repoquery --plugins --queryformat '%{NAME}_|-%{VERSION}_|-%{RELEASE}_|-%{ARCH}_|-%{REPOID}' --all --pkgnarrow=installed" in directory '/root'
2015-09-23 11:18:25,300 [salt.state       ][INFO    ][28136] Package sensu is already installed.
2015-09-23 11:18:25,308 [salt.state       ][INFO    ][28136] Completed state [sensu] at time 11:18:25.308320
2015-09-23 11:18:25,311 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded file.managed
2015-09-23 11:18:25,312 [salt.state       ][INFO    ][28136] Running state [/etc/sensu/conf.d/rabbitmq.json] at time 11:18:25.311759
2015-09-23 11:18:25,312 [salt.state       ][INFO    ][28136] Executing state file.managed for /etc/sensu/conf.d/rabbitmq.json
2015-09-23 11:18:25,313 [salt.crypt       ][DEBUG   ][28136] Re-using SAuth for ('/etc/salt/pki/minion', 'i-12345678', 'tcp://1.2.3.4:port')
2015-09-23 11:18:25,320 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache 'salt://sensu/files/rabbitmq.json'
2015-09-23 11:18:25,320 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,326 [salt.crypt       ][DEBUG   ][28136] Re-using SAuth for ('/etc/salt/pki/minion', 'i-12345678', 'tcp://1.2.3.4:port')
2015-09-23 11:18:25,337 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache 'salt://sensu/pillar_map.jinja'
2015-09-23 11:18:25,357 [salt.state       ][INFO    ][28136] File /etc/sensu/conf.d/rabbitmq.json is in the correct state
2015-09-23 11:18:25,358 [salt.state       ][INFO    ][28136] Completed state [/etc/sensu/conf.d/rabbitmq.json] at time 11:18:25.357605
2015-09-23 11:18:25,358 [salt.state       ][INFO    ][28136] Running state [/etc/sensu/conf.d/transport.json] at time 11:18:25.358113
2015-09-23 11:18:25,358 [salt.state       ][INFO    ][28136] Executing state file.managed for /etc/sensu/conf.d/transport.json
2015-09-23 11:18:25,361 [salt.state       ][INFO    ][28136] File /etc/sensu/conf.d/transport.json is in the correct state
2015-09-23 11:18:25,362 [salt.state       ][INFO    ][28136] Completed state [/etc/sensu/conf.d/transport.json] at time 11:18:25.361742
2015-09-23 11:18:25,362 [salt.state       ][INFO    ][28136] Running state [/etc/sensu/conf.d/pagerduty.json] at time 11:18:25.362183
2015-09-23 11:18:25,363 [salt.state       ][INFO    ][28136] Executing state file.managed for /etc/sensu/conf.d/pagerduty.json


2015-09-23 11:18:25,367 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache 'salt://sensu/files/pagerduty.json'
2015-09-23 11:18:25,367 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,379 [salt.crypt       ][DEBUG   ][28136] Re-using SAuth for ('/etc/salt/pki/minion', 'i-12345678', 'tcp://1.2.3.4:port')
2015-09-23 11:18:25,381 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache 'salt://sensu/pillar_map.jinja'
2015-09-23 11:18:25,401 [salt.state       ][INFO    ][28136] File /etc/sensu/conf.d/pagerduty.json is in the correct state
2015-09-23 11:18:25,401 [salt.state       ][INFO    ][28136] Completed state [/etc/sensu/conf.d/pagerduty.json] at time 11:18:25.400774
2015-09-23 11:18:25,401 [salt.state       ][INFO    ][28136] Running state [/etc/sensu/conf.d/redis.json] at time 11:18:25.401214
2015-09-23 11:18:25,402 [salt.state       ][INFO    ][28136] Executing state file.managed for /etc/sensu/conf.d/redis.json
2015-09-23 11:18:25,406 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache 'salt://sensu/files/redis.json'
2015-09-23 11:18:25,406 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,409 [salt.crypt       ][DEBUG   ][28136] Re-using SAuth for ('/etc/salt/pki/minion', 'i-12345678', 'tcp://1.2.3.4:port')
2015-09-23 11:18:25,418 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache 'salt://sensu/pillar_map.jinja'
2015-09-23 11:18:25,437 [salt.state       ][INFO    ][28136] File /etc/sensu/conf.d/redis.json is in the correct state
2015-09-23 11:18:25,438 [salt.state       ][INFO    ][28136] Completed state [/etc/sensu/conf.d/redis.json] at time 11:18:25.437666
2015-09-23 11:18:25,438 [salt.state       ][INFO    ][28136] Running state [/etc/sensu/conf.d/checks.d] at time 11:18:25.437980
2015-09-23 11:18:25,438 [salt.state       ][INFO    ][28136] Executing state file.directory for /etc/sensu/conf.d/checks.d
2015-09-23 11:18:25,439 [salt.state       ][INFO    ][28136] Directory /etc/sensu/conf.d/checks.d is in the correct state
2015-09-23 11:18:25,439 [salt.state       ][INFO    ][28136] Completed state [/etc/sensu/conf.d/checks.d] at time 11:18:25.439128
2015-09-23 11:18:25,440 [salt.state       ][INFO    ][28136] Running state [/etc/sensu/conf.d/checks.d] at time 11:18:25.439544
2015-09-23 11:18:25,440 [salt.state       ][INFO    ][28136] Executing state file.recurse for /etc/sensu/conf.d/checks.d
2015-09-23 11:18:25,462 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,463 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,469 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,469 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,475 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,476 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,483 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,483 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,489 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'



2015-09-23 11:18:25,489 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,496 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,496 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,502 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,502 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,508 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,508 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,514 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,515 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,521 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,521 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,527 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,527 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,533 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,533 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,539 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,540 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,553 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,554 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,559 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,560 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,566 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'



2015-09-23 11:18:25,566 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,572 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,572 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,578 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,578 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,584 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/checks.d/$CHECK.json'
2015-09-23 11:18:25,584 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,587 [salt.state       ][INFO    ][28136] The directory /etc/sensu/conf.d/checks.d is in the correct state
2015-09-23 11:18:25,587 [salt.state       ][INFO    ][28136] Completed state [/etc/sensu/conf.d/checks.d] at time 11:18:25.587230
2015-09-23 11:18:25,588 [salt.state       ][INFO    ][28136] Running state [/etc/sensu/conf.d/handlers.d] at time 11:18:25.587537
2015-09-23 11:18:25,588 [salt.state       ][INFO    ][28136] Executing state file.directory for /etc/sensu/conf.d/handlers.d
2015-09-23 11:18:25,588 [salt.state       ][INFO    ][28136] Directory /etc/sensu/conf.d/handlers.d is in the correct state
2015-09-23 11:18:25,589 [salt.state       ][INFO    ][28136] Completed state [/etc/sensu/conf.d/handlers.d] at time 11:18:25.588650
2015-09-23 11:18:25,589 [salt.state       ][INFO    ][28136] Running state [/etc/sensu/conf.d/handlers.d] at time 11:18:25.589073
2015-09-23 11:18:25,589 [salt.state       ][INFO    ][28136] Executing state file.recurse for /etc/sensu/conf.d/handlers.d
2015-09-23 11:18:25,611 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/handlers.d/$HANDLER.json'
2015-09-23 11:18:25,612 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,618 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/handlers.d/$HANDLER.json'
2015-09-23 11:18:25,618 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,624 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/handlers.d/$HANDLER.json'
2015-09-23 11:18:25,624 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,630 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/handlers.d/$HANDLER.json'
2015-09-23 11:18:25,630 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,636 [salt.fileclient  ][INFO    ][28136] Fetching file from saltenv 'base', ** skipped ** latest already in cache u'salt://sensu/files/conf.d/handlers.d/$HANDLER.json'




2015-09-23 11:18:25,636 [salt.utils.jinja ][DEBUG   ][28136] Jinja search path: ['/var/cache/salt/minion/files/base']
2015-09-23 11:18:25,638 [salt.state       ][INFO    ][28136] The directory /etc/sensu/conf.d/handlers.d is in the correct state
2015-09-23 11:18:25,639 [salt.state       ][INFO    ][28136] Completed state [/etc/sensu/conf.d/handlers.d] at time 11:18:25.638529
2015-09-23 11:18:25,639 [salt.state       ][INFO    ][28136] Running state [/etc/sensu/extensions] at time 11:18:25.638987
2015-09-23 11:18:25,639 [salt.state       ][INFO    ][28136] Executing state file.recurse for /etc/sensu/extensions
2015-09-23 11:18:25,659 [salt.state       ][INFO    ][28136] The directory /etc/sensu/extensions is in the correct state
2015-09-23 11:18:25,659 [salt.state       ][INFO    ][28136] Completed state [/etc/sensu/extensions] at time 11:18:25.658987
2015-09-23 11:18:25,659 [salt.state       ][INFO    ][28136] Running state [/etc/sensu/mutators] at time 11:18:25.659410
2015-09-23 11:18:25,660 [salt.state       ][INFO    ][28136] Executing state file.recurse for /etc/sensu/mutators
2015-09-23 11:18:25,679 [salt.state       ][INFO    ][28136] The directory /etc/sensu/mutators is in the correct state
2015-09-23 11:18:25,679 [salt.state       ][INFO    ][28136] Completed state [/etc/sensu/mutators] at time 11:18:25.679430
2015-09-23 11:18:25,680 [salt.state       ][INFO    ][28136] Running state [/etc/sensu/handlers] at time 11:18:25.679862
2015-09-23 11:18:25,680 [salt.state       ][INFO    ][28136] Executing state file.recurse for /etc/sensu/handlers
2015-09-23 11:18:25,706 [salt.state       ][INFO    ][28136] The directory /etc/sensu/handlers is in the correct state
2015-09-23 11:18:25,707 [salt.state       ][INFO    ][28136] Completed state [/etc/sensu/handlers] at time 11:18:25.706453
2015-09-23 11:18:25,707 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded service.running
2015-09-23 11:18:25,710 [salt.state       ][INFO    ][28136] Running state [sensu-server] at time 11:18:25.709788
2015-09-23 11:18:25,710 [salt.state       ][INFO    ][28136] Executing state service.running for sensu-server
2015-09-23 11:18:25,711 [salt.loaded.int.module.cmdmod][INFO    ][28136] Executing command '/sbin/service sensu-server status' in directory '/root'
2015-09-23 11:18:25,827 [salt.loaded.int.module.cmdmod][DEBUG   ][28136] output: sensu-server (pid 15351) is running
2015-09-23 11:18:25,828 [salt.loaded.int.module.cmdmod][INFO    ][28136] Executing command '/sbin/chkconfig --list sensu-server' in directory '/root'
2015-09-23 11:18:25,874 [salt.loaded.int.module.cmdmod][DEBUG   ][28136] stdout: sensu-server           0:off   1:off   2:on    3:on    4:on    5:on    6:off
2015-09-23 11:18:25,875 [salt.loaded.int.module.cmdmod][INFO    ][28136] Executing command '/sbin/runlevel' in directory '/root'
2015-09-23 11:18:25,922 [salt.loaded.int.module.cmdmod][DEBUG   ][28136] output: N 3
2015-09-23 11:18:25,923 [salt.state       ][INFO    ][28136] Service sensu-server is already enabled, and is in the desired state
2015-09-23 11:18:25,923 [salt.state       ][INFO    ][28136] Completed state [sensu-server] at time 11:18:25.923349
2015-09-23 11:18:25,925 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded cmd.run
2015-09-23 11:18:25,926 [salt.state       ][INFO    ][28136] Running state [/opt/sensu/embedded/bin/gem install redphone] at time 11:18:25.925760
2015-09-23 11:18:25,926 [salt.state       ][INFO    ][28136] Executing state cmd.run for /opt/sensu/embedded/bin/gem install redphone
2015-09-23 11:18:25,927 [salt.loaded.int.module.cmdmod][INFO    ][28136] Executing command 'test -e /opt/sensu/embedded/lib/ruby/gems/2.0.0/doc/redphone-0.0.6' in directory '/root'




2015-09-23 11:18:25,974 [salt.loaded.int.module.cmdmod][DEBUG   ][28136] output:
2015-09-23 11:18:25,975 [salt.loaded.int.states.cmd][DEBUG   ][28136] Last command return code: 0
2015-09-23 11:18:25,975 [salt.state       ][INFO    ][28136] unless execution succeeded
2015-09-23 11:18:25,976 [salt.state       ][INFO    ][28136] Completed state [/opt/sensu/embedded/bin/gem install redphone] at time 11:18:25.975618
2015-09-23 11:18:25,976 [salt.state       ][INFO    ][28136] Running state [/opt/sensu/embedded/bin/gem install hipchat] at time 11:18:25.976139
2015-09-23 11:18:25,985 [salt.state       ][INFO    ][28136] Executing state cmd.run for /opt/sensu/embedded/bin/gem install hipchat
2015-09-23 11:18:25,986 [salt.loaded.int.module.cmdmod][INFO    ][28136] Executing command 'test -e /opt/sensu/embedded/lib/ruby/gems/2.0.0/doc/hipchat-1.4.0' in directory '/root'
2015-09-23 11:18:26,032 [salt.loaded.int.module.cmdmod][DEBUG   ][28136] output:
2015-09-23 11:18:26,033 [salt.loaded.int.states.cmd][DEBUG   ][28136] Last command return code: 0
2015-09-23 11:18:26,033 [salt.state       ][INFO    ][28136] unless execution succeeded
2015-09-23 11:18:26,034 [salt.state       ][INFO    ][28136] Completed state [/opt/sensu/embedded/bin/gem install hipchat] at time 11:18:26.033500
2015-09-23 11:18:26,034 [salt.state       ][DEBUG   ][28136] File /var/cache/salt/minion/accumulator/38737616 does not exist, no need to cleanup.
2015-09-23 11:18:26,046 [salt.crypt       ][DEBUG   ][28136] Re-using SAuth for ('/etc/salt/pki/minion', 'i-12345678', 'tcp://1.2.3.4:port')
2015-09-23 11:18:26,057 [salt.utils.lazy  ][DEBUG   ][28136] LazyLoaded highstate.output

@rodriguezsergio, thanks for the extra information. I don't see anything related in the log, but thanks for providing that anyway, this looks to be a bug.

I am also having this problem:

----------
          ID: listen_/etc/nginx/sites-enabled/*
    Function: Listen_Error.Listen_Error
        Name: listen_file
      Result: False
     Comment: Referenced state file: /etc/nginx/sites-enabled/* does not exist
     Started: 
    Duration: 
     Changes:

From this code in the nginx sls file:

nginx:
  pkg.installed:
    - fromrepo: {{ grains['oscodename'] }}-backports
    - refresh: True
  service.running:
    - require:
      - pkg: nginx
    - listen:
      - file: /etc/nginx/nginx.conf
      - file: /etc/nginx/sites-enabled/*

If I use watch instead of listen, it works flawlessly, but I have problems with states order when using watch.

In the code I see that there is not any kind of pattern search, only a direct match: https://github.com/saltstack/salt/blob/develop/salt/state.py#L2157

Unfortunately the code is not commented so I have no idea what any variable contains to test some possible fix.

Anything new about this issue? I have the same behavior with 2016.3.3.

same behavior here, 2016.3.2

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

If this issue is closed prematurely, please leave a comment and we will gladly reopen the issue.

Was this page helpful?
0 / 5 - 0 ratings