2013-04-11 6 views
36

Ich habe ziemlich umfangreiche Salz-Konfiguration und ich möchte sehen können, was sich geändert hat. Wenn ich nur salt '*' state.highstate ausführen würde, bekam ich die ganze Liste mit Dingen, die vorhanden waren und nicht geändert wurden - wie 3 bis 4 Bildschirme von Protokoll. Aber ich würde wirklich gerne nur Dinge sehen, die sich im letzten Job geändert haben.Gibt es eine Möglichkeit, nur Änderungen und Fehler anzuzeigen

Es muss nicht für den Salz Anruf arbeiten, es kann auch salt-run jobs.lookup_jid verwenden.

Antwort

25

Sie können state_verbose: False in /etc/salt/master//etc/salt/minion einstellen. Sie können die Ausgabe auch auf eine Zeile pro Status über state_output: terse verkürzen.

+0

Gibt es eine Möglichkeit, dies auf der Kommandozeile angeben, zB: Salz ‚*‘ state.highstate state_output = terse – djsmith

+23

Salz - -state-output = knappe '*' state.highstate –

+0

ist diese Art der Filterung auch auf Salz-Call verfügbar? scheint nicht zu sein. –

30

Wir haben auch hinzugefügt state_output: mixed, die Ihnen die gleiche Ausgabe wie terse geben wird, außer wenn es einen Fehler gibt, in diesem Fall wird es Ihnen die ausführlichere Ausgabe geben.

14

Es gibt 2 Möglichkeiten, erste ist die state_output in Master-Konfigurationsdatei zu ändern, wie in der akzeptierten Antwort erwähnt, und es ist auch möglich, den Zustand Ausgabe in der Befehlszeile außer Kraft zu setzen, wie:

salt --state-output=mixed \* test.version 
18

zu tatsächlich die Frage beantworten, ja, es ist ein Ausgangsfilter für Änderungen nur:

salt '*' state.highstate --state-output=changes 

Dies wird einen Liner für die Dinge an, die im richtigen Zustand und der richtigen Ausgang für die Veränderungen sind. dh:

<...> 
    Name: /etc/sudoers - Function: file.managed - Result: Clean 
    Name: /etc/timezone - Function: file.managed - Result: Clean 
    Name: /etc/pki/tls/certs/logstash-forwarder.crt - Function: file.managed - Result: Clean 
    Name: /etc/init.d/logstash-forwarder - Function: file.managed - Result: Clean 
---------- 
      ID: /etc/logstash-forwarder 
    Function: file.managed 
     Result: True 
    Comment: File /etc/logstash-forwarder updated 
    Started: 14:14:28.580950 
    Duration: 65.664 ms 
    Changes: 
       ---------- 
       diff: 
        --- 
        +++ 
        @@ -1,6 +1,6 @@ 
        { 
        "network": { 
        - "servers": [ "10.0.0.104:5000" ], 
        + "servers": [ "10.0.0.72:5000" ], 
         "timeout": 15, 
         "ssl ca": "/etc/pki/tls/certs/logstash-forwarder.crt" 
        }, 

    Name: deb http://packages.elasticsearch.org/logstashforwarder/debian stable main - Function: pkgrepo.managed - Result: Clean 
    Name: logstash-forwarder - Function: pkg.installed - Result: Clean 
    <...> 
4

Ab dem folgenden PR, die in Salz 2015.8.0 verschmolzen wurden (https://github.com/saltstack/salt/pull/26962) ist es nun möglich, die state_verbose Flagge von der Kommandozeile zu wechseln, wenn highstate läuft. Dies überschreibt die Konfiguration, die Sie in /etc/salt/master, die in früheren Antworten erwähnt wurde, festlegen können.

Der folgende Befehl sollte nun angezeigt werden nur die Änderungen und Fehler von einem highstate Laufe salt '*' state.highstate --state-verbose=False