Face error messages during startup may be swallowed
|Assignee:||Chris Price||% Done:|
|Affected Puppet version:||Branch:||https://github.com/puppetlabs/puppet/pull/668|
Ticket tracking is now hosted in JIRA: https://tickets.puppetlabs.com
This issue is currently not available for export. If you are experiencing the issue described below, please file a new ticket in JIRA. Once a new ticket has been created, please add a link to it that points back to this Redmine ticket.
The method Puppet::Util#exit_on_fail has an exception handling block that attempts to ensure that any error that occurs during the lifecycle of the face will be logged.
A recurring problem that we keep seeing, though, is that if an error occurs before logging is initialized, we still swallow the errors. We have a queuing mechanism in place that attempts to queue up log messages that are written before the logging framework is initialized, and then flush the queue once the logging system is ready. However, this still doesn’t work if the error occurs before logging is fully initialized.