I'll try it after exiting this meeting. 

> On Nov 26, 2013, at 11:27 AM, Dan White <[email protected]> wrote:
> 
> Reference: http://docs.puppetlabs.com/puppet/3/reference/format_report.html
> 
> Start with this:
> ----------------------------------------------------------------------------------------
> #!/usr/bin/ruby 
> 
> require 'puppet'
> if defined?(ARGV)
>    filename = ARGV.first
> 
>    if defined?(filename)
>        report = YAML.load_file(filename)
>        print "Report for : "
>        puts report.host
>        print "Started : "
>        puts report.time
>        print "Log count: "
>        puts report.logs.size
>        print "Metrics count: "
>        puts report.metrics.size
>        print "Resource Status count: "
>        puts report.resource_statuses.size
>        print "Status: "
>        puts report.status
> 
>        report.logs.each do |logg|
>            puts "LOG ---------------------------------------------"
>            if logg.file
>                print "File: "
>                puts logg.file
>            end
> 
>            if logg.line
>                print "Line: "
>                puts logg.line
>            end
> 
>            print "Level: "
>            puts logg.level
>            print "Message: "
>            puts logg.message
>            print "Source: "
>            puts logg.source
>            print "Tags: "
>            puts logg.tags.join(" ")
>            print "Time: "
>            puts logg.time
>        end
> 
>        report.resource_statuses.keys.each do |kk|
>            if report.resource_statuses["#{kk}"].change_count > 0
>                puts "RESOURCE STATUS ===================================="
>                puts "#{kk} "
>                report.resource_statuses["#{kk}"].events.each do |line|
>                    print "property: "
>                    puts line.property
>                    print "message: "
>                    puts line.message
>                    print "name: "
>                    puts line.name
>                    print "status: "
>                    puts line.status
>                    print "when: "
>                    puts line.time
>                end
>            end
>        end
>        puts "-------------------------------------------------"
>    end
> end
> ------------------------------------------------------------------------------------------
> 
> Good luck.
> 
> 
> “Sometimes I think the surest sign that intelligent life exists elsewhere in 
> the universe is that none of it has tried to contact us.”
> Bill Waterson (Calvin & Hobbes)
> 
> ----- Original Message -----
> From: "Stuart Cracraft" <[email protected]>
> To: [email protected]
> Sent: Tuesday, November 26, 2013 2:10:53 PM
> Subject: Re: [Puppet Users] get a *structured* version of the puppet agent 
> output
> 
> Who will share a report generator for the yaml reports generated by puppet so 
> that we do not have to reinvent wheel after wheel after wheel!!!!!!
> 
>> On Nov 26, 2013, at 11:08 AM, "R.I.Pienaar" <[email protected]> wrote:
>> 
>> 
>> 
>> ----- Original Message -----
>>> From: "Stuart Cracraft" <[email protected]>
>>> To: [email protected]
>>> Sent: Tuesday, November 26, 2013 7:02:42 PM
>>> Subject: Re: [Puppet Users] get a *structured* version of the puppet agent 
>>> output
>>> 
>>> What we want is not more complexity, but more simplicity!
>>> 
>>> I could go into
>>> 
>>> puppet config print reportdir
>>> 
>>> and then to its
>>> 
>>> /var/lib/puppet/reports
>>> 
>>> then to the host directories of interest and grep out message.
>>> 
>>> But that seems a very sorry state of affairs.
>>> 
>>> Puppetmasters speak UP!
>> 
>> you do not need to grep out anything, as I showed you there is a ruby API
>> for accessing this data.
>> 
>> If you use PuppetDB it will also be able to store this information and it has
>> APIs for extracting these logs in a structured manner.
>> 
>> API access is about as much as you can hope for I think.  Your alternatives 
>> are
>> to write a logger plugin for Puppet that outputs JSON, I've done this and it
>> was not clear sailing.
>> 
>> 
>> -- 
>> You received this message because you are subscribed to a topic in the 
>> Google Groups "Puppet Users" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/puppet-users/cHpZlKkPmr4/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to 
>> [email protected].
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/puppet-users/1024951816.609.1385492893475.JavaMail.zimbra%40devco.net.
>> For more options, visit https://groups.google.com/groups/opt_out.
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Puppet Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/puppet-users/6E1AA223-0401-485C-8E4C-AABF12FB2291%40me.com.
> For more options, visit https://groups.google.com/groups/opt_out.
> 
> -- 
> You received this message because you are subscribed to a topic in the Google 
> Groups "Puppet Users" group.
> To unsubscribe from this topic, visit 
> https://groups.google.com/d/topic/puppet-users/cHpZlKkPmr4/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to 
> [email protected].
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/puppet-users/877739462.4751612.1385494040183.JavaMail.root%40sz0126a.westchester.pa.mail.comcast.net.
> For more options, visit https://groups.google.com/groups/opt_out.

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/FE3E7F42-D57E-4DEC-A12C-A940481933B5%40me.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to