Improve Application Logging
- use proper logging level for form validation errors
- enhance MifosLogManager to allow overriding loggerconfiguration.xml using a file outside of the Mifos WAR
- DONE. A custom loggerconfiguration.xml can now be placed in Mifos Configuration Locations
- override should be additive if possible, otherwise the "external-to-war" logger configuration can be a complete override
- Similar "external-to-war" overrides are performed in SpringUtil and FinancialInitializer, so see those classes for working examples
- instead of using hardcoded JDBC parameters for the MifosJDBCAppender, use values as specified in LocalPropertiesFile
- JDBC appender is not tested (and not known to be used), hence, should probably be removed
- remove unnecessary calls to MifosLogManager.configure(). Example: TestAccountingRules#init() calls this method, but there is no need since TestAccountingRules extends MifosTestCase, and the static initializer for MifosTestCase ends up initializing logging
- better yet, remove MifosLogManager.configure() altogether
- Mifos tries to write the app log to the current directory. This causes Mifos to crash on servers with decent security.
- workaround is using a custom loggerconfiguration.xml
- write documentation
Resources
- issue 1685 (resolved fixed)
- issue 2388
- other potential future app log improvements
- `small blurb on application logging </knowledge/support/maintaining-mifos/manage-logging#Application_Logging>`_