Not too long ago I received a question how hard it would be to log the duration of Puppet runs to Graylog. The answer was pretty straight forward: if your machine is currently logging to a Graylog instance, the information will already be there. By default, the line 'Finished catalog run in n seconds' will be present in your logging and at your disposal.
However, it might be easier to use an extractor to format your data while it's being processed, so I wrote a small extractor for Puppet data in Graylog. As every extractor, it's quite easy to import and use.