Fault

 view release on metacpan or  search on metacpan

lib/Fault/Logger.pm  view on Meta::CPAN

# Moved all todo notes to elsewhere; made Stderr the default delegate instead of Stdout.
#
# Revision 1.9  2008-07-23 22:32:51  amon
# chomp line ends in Msg class rather than fail unconditionally due to 
# POSIX::isprint.
#
# Revision 1.8  2008-05-10 15:19:44  amon
# Minor doc changes before release
#
# Revision 1.7  2008-05-09 18:24:55  amon
# Bugs and changes due to pre-release testing
#
# Revision 1.6  2008-05-08 20:22:50  amon
# Minor bug fixes; shifted fault table and initfault from Logger to List
#
# Revision 1.5  2008-05-07 19:22:05  amon
# Last major change set for this version.
#
# Revision 1.4  2008-05-05 19:25:49  amon
# Catch any small changes before implimenting major changes
#
# Revision 1.3  2008-05-04 14:38:46  amon
# Major rework of code and docs. First cut at multiple delegates and arg
# checking. Regularized call arg and return value lists.
#
# Revision 1.2  2008-05-03 00:36:01  amon
# Changed standard arg list. Also now defaults to Stdout delegate if none is 
# supplied.
#
# Revision 1.1.1.1  2008-05-02 16:32:30  amon
# Fault and Log System. Pared off of DMA base lib.
#
# Revision 1.8  2008-04-25 10:58:13  amon
# documentation changes
#
# Revision 1.7  2008-04-20 00:58:26  amon
# Added the arg_check-* method set
#
# Revision 1.6  2008-04-18 14:07:54  amon
# Minor documentation format changes
#
# Revision 1.5  2008-04-11 22:25:23  amon
# Add blank line after cut.
#
# Revision 1.4  2008-04-11 18:56:35  amon
# Fixed quoting problem with formfeeds.
#
# Revision 1.3  2008-04-11 18:39:15  amon
# Implimented new standard for headers and trailers.
#
# Revision 1.2  2008-04-10 15:01:08  amon
# Added license to headers, removed claim that the documentation section still
# relates to the old doc file.
#
# Revision 1.1.1.1  2006-09-09 18:15:14  amon
# Dale's library of primitives in Perl
#
# 20041130	Dale Amon <amon@vnl.com>
#		Almost a full rewrite over the last couple days. Added
#		caller callback arg; changed name of logfile method
#		to delegate; added more arg checking; split methods into
#		public and private parts and more. Also redocumented.
#
# 20041127	Dale Amon <amon@vnl.com>
#		Lots of additions. Added callback hooks for state
#		transitions and pass throughs for args needed by syslog
#		using LogFile objects.
#
# 20041013	Dale Amon <amon@vnl.com>
#		Added crash method and support for arglist pass through.
#
# 20040813	Dale Amon <amon@vnl.com>
#		Moved to DMA:: from Archivist::
#		to make it easier to enforce layers.
#
# 20030108	Dale Amon <amon@vnl.com>
#		Changed to allow subclassing; general tidying; fixed LogFile
#		class to return t/f as assert in our log method.
#
# 20030107	Dale Amon <amon@vnl.com>
#		Created.
#
# DONE	* Before I go public I should move the target variable to at least
#         before the type. I would have to change nearly all code I have
#	  written this decade to do so. Is it worth it? Perhaps do a full
#	  version split and grandfather the old ones? Perhaps rename the
#	  new one Logger instead of DMA::Logger? [DMA ?-20080502]
#	* Add the priority field to all calls as a standard arg.
#	  [DMA20080407-20080502]
#	* Move the target to the @rest arguments. [DMA20080407-20080502]
# 	* I should check that priority contains a valid priority, that
#         and type is a single word. get_*_args are a great place to do it
#	  once and for all if I can decided what to do with an wrong one.
#	  [DMA ?-20080503]
# 	* Expand delegate to a list to allow logging to multiple locations.
#	  If I do, should I make initfault do an or of tables or keep
#	  individual tables?  [DMA20080407-20080503]
#	* Update example.pl for multiple delegates.  [DMA20080503-20080504]
#	* replace warns with ErrorHandler calls where reasonable.
#	  [DMA20080503-20080505]
#	* _delegateExists operation so I can add only if new and delete
#	  only if it exists. Question is, what does exist mean? Stdout
#	  should only have one instance; probably same with DB; but what
#	  about multiple File delegates with different output files?
#	  (Created Delegate List class. [DMA20080503-20080506]
#	* I should use a hash instead of a list for delegates and treat
#	  them as handles. Stdout could be a class object if I am worried
#	  about multiple use of it.  [DMA20080503-20080506]
#	* Can I do anything more with commonalities in arg_check methods?
#	  (Nothing left that is worth the effort.) [DMA20080503-20080506]
#	* Make sure all delegates do their arg and failure checking.
#	  [DMA20080504-20080506]
#	* Should Delegate new be able to fail and return undef if a delegate
#	  cannot be initialized? (yes) [DMA ?-20080506]
#	* Check all use of $s as it might be the class name in some 
#	  circumstances and I have changed the flow such that it will now
#	  cause problems. [DMA20080506-20080607]
#	* Message is not being saved. (Now done in _log) 
#	  [DMA20080506-20080507]
#	* Carefully check all the documentation. [DMA20080506-20080507]
#	* When I add a new delegate, should I immediately do an initfault?



( run in 0.698 second using v1.01-cache-2.11-cpan-71847e10f99 )