Improve Application Logging

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

  • 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

  • Mifos tries to write the app log to the current directory. This causes Mifos to crash on servers with decent security.

  • write documentation

Resources