[openstack-dev] Log / error message format best practices & standards

boden boden at linux.vnet.ibm.com
Thu Jun 26 16:14:32 UTC 2014


We were recently having a discussion over here in trove regarding a 
standardized format to use for log and error messages - obviously 
consistency is ideal (within and across projects). As this discussion 
involves the broader dev community, bringing this topic to the list for 
feedback...


I'm aware of the logging standards wiki[1], however this page does not 
describe in depth a standardized format to use for log / error messages.

In particular w/r/t program values in messages:

(a) For in-line program values, I've seen both single quoted and 
unquoted formatting used. e.g.
single quote: LOG.info("The ID '%s' is not invalid." % (resource.id))
unquoted: LOG.info("The ID %s is not valid." % (resource.id))

(b) For program values appended to the message, I've seen various 
formats used. e.g.
LOG.info("This path is invalid: %s" % (obj.path))
LOG.info("This path is invalid %s" % (obj.path))
LOG.info("This path is invalid - %s" % (obj.path))


 From a consistency perspective, it seems we should consider 
standardizing a best practice for such formatting.

For in-line values (#a above) I find single quotes the most consumable 
as they are a clear indication the value came from code and moreover 
provide a clear set of delimiters around the value. However to date 
unquoted appears to be the most widely used.

For appended values (#b above) I find a delimiter such as ':' most 
consumable as it provides a clear boundary between the message and 
value. Using ':' seems fairly common today, but you'll find other 
formatting throughout the code.

If we wanted to squash this topic the high level steps are (approximately):
- Determine and document message format.
- Ensure the format is part of the dev process (coding + review).
- Cross team work to address existing messages not following the format.


Thoughts / comments?


[1] https://wiki.openstack.org/wiki/LoggingStandards





More information about the OpenStack-dev mailing list