Skip to end of metadata
Go to start of metadata
Under Construction
This proposal is under construction and is not ready for review.

Zend Framework: Zend_Log_Factory Component Proposal

Proposed Component Name Zend_Log_Factory
Developer Notes http://framework.zend.com/wiki/display/ZFDEV/Zend_Log_Factory
Proposers Tomas Vesely
Zend Liaison TBD
Revision 1.0 - 22 November 2009: Initial Draft. (wiki revision: 2)

Table of Contents

1. Overview

Zend_Log_Factory is a component that creates logging environment from Zend_Log or array. It is very loosely inspired by Apache's log4j but with respect to existing Zend_Log components. There is a similar proposal http://framework.zend.com/wiki/display/ZFPROP/Zend_Log+factory%28%29+-+Martin+Roest but I believe that one factory method is not enough. For example there are problems with passing resources like db, mail or layout.

2. References

3. Component Requirements, Constraints, and Acceptance Criteria

4. Dependencies on Other Framework Components

  • Zend_Log
  • Zend_Log_Filter_*
  • Zend_Log_Formatter_*
  • Zend_Log_Writer_*

5. Theory of Operation

There is a corresponding factory class for each filter, formatter and writer. This class knows how to create it's component instance from a config array.
Class Zend_Log_Factory orchestrates the whole process. It uses standard ZF mechanisms like plugin loaders to load factory classes.

6. Milestones / Tasks

Describe some intermediate state of this component in terms of design notes, additional material added to this page, and / code. Note any significant dependencies here, such as, "Milestone #3 can not be completed until feature Foo has been added to ZF component XYZ." Milestones will be required for acceptance of future proposals. They are not hard, and many times you will only need to think of the first three below.

  • Milestone 1: design notes will be published here
  • Milestone 2: Working prototype checked into the incubator supporting use cases #1, #2, ...
  • Milestone 3: Working prototype checked into the incubator supporting use cases #3 and #4.
  • Milestone 4: Unit tests exist, work, and are checked into SVN.
  • Milestone 5: Initial documentation exists.

If a milestone is already done, begin the description with "[DONE]", like this:

  • Milestone #: [DONE] Unit tests ...

7. Class Index

  • Zend_Log_Factory
  • Zend_Log_Composite
  • Zend_Log_Factory_Exception
  • Zend_Log_Factory_Filter_Abstract
  • Zend_Log_Factory_Filter_Exception
  • Zend_Log_Factory_Filter_Message
  • Zend_Log_Factory_Filter_Priority
  • Zend_Log_Factory_Formatter_Abstract
  • Zend_Log_Factory_Formatter_Simple
  • Zend_Log_Factory_Formatter_Xml
  • Zend_Log_Factory_Plugin_Abstract
  • Zend_Log_Factory_Plugin_Broker
  • Zend_Log_Factory_Plugin_EventItem
  • Zend_Log_Factory_Writer_Abstract
  • Zend_Log_Factory_Writer_Exception
  • Zend_Log_Factory_Writer_Mail
  • Zend_Log_Factory_Writer_Null
  • Zend_Log_Factory_Writer_Stream

8. Use Cases

UC-01

... (see good use cases book)

9. Class Skeletons

Labels:
None
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Feb 06, 2011

    Archiving this proposal, feel free to recover it when you want to work on it again. For more details see this email.