Many of the windows-oriented or windows-themed exec and state modules in SaltStack return large, indivisible units of data back to the command line. I know the "real solution" here is to plug salt into an advanced/complex returner mechanism with it's own DB and UI, but not everybody is on the outscaling growth trajectory and destined for legions of minions. For the rest of us small-time ops/admins, there's a nice, obscure tool called jq that will filter the salt data for you right inline: a real unix paradigm conformer. Suppose you want to know only about which of your windows minions are set to auto update and watch for updates for other Microsoft products:
salt -G 'kernel:Windows' win_wua.get_wu_settings --out=json | jq -r 'keys as $k | "\($k):\n level: \(.[$k] | ."Notification Level")\n MS update: \(.[$k] | . "Microsoft Update")"' jerry: level: 1 MS update: false kevin: level: 4 MS update: true stuart: level: 4 MS update: false dave: level: 2 MS update: false carl: level: 3 MS update: true
Also characteristic of traditional command line utilities, jq's syntax is not amenable to quick comprehension or mastery. Indeed here are the resources I used to construct the above query:
- jq Manual: Well-appearing but mostly designed for someone with much more open and/or flexible time than I. Perhaps you would read this if you were a college student with no friends or family during winter break.
- Selecting object values: found via jq select -jquery.
Obliquely topical obligatory XKCD (Bonus: 4!):