<commit_before><?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<!--
Log4j configuration file for MIFOS.  The intention is to move this
to conf/log4j.xml, but this has not yet been done.  Also, there
should be a my.log4j.xml or some such mechanism for overriding
the location of Mifos_log.log.
-->

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
  
  <!--Console Appender: A logger attached to this appender logs all statements to the console --> 
  <appender name="MifosAppender" class="org.apache.log4j.ConsoleAppender">
    <!-- Appender is associated with the pattern layout which prints the Level of 
         logging,the category, the class , method, the line number from where the log statement was issued , 
         the log statement and the date 
    -->
    <layout class="org.mifos.framework.components.logger.MifosPatternLayout">
<!--    <layout class="org.apache.log4j.PatternLayout"> -->
		<param name="ConversionPattern" value="%-3p, %c, %C{1}, %M , %L, %m, %d{dd MMM yyyy HH:mm:ss}%n"/>
	</layout>
  </appender>
  
  <!--Daily rolling Appender: A logger attached to this appender logs all statements to the specified file.
   	   The underlying file is rolled over at midnight. 
      
  --> 
  <appender name="MifosRollingFileAppender" class="org.apache.log4j.DailyRollingFileAppender">
    <!-- Name of the file. At midnight a new file with the name Mifos_log.log.date is created -->
    <param name="File" value="/Mifos_log.log"/>
    <!-- Rolling Schedule: Rolls over at midnight. Hence new file will be rolling.log.newDate -->
    <param name="DatePattern" value="'.'yyyy-MM-dd"/>
  
	<!--Layout class for the Daily Rolling File Appender -->
	<layout class="org.mifos.framework.components.logger.MifosPatternLayout"> 
	<!-- Appender is associated with the pattern layout which prints the Level of 
         logging,the category, the class , method, the line number from where the log statement was issued , 
         the log statement and the date 
    -->
	<param name="ConversionPattern" value="%-3p, %c, %C{1}, %M , %L, %m, %d{dd MMM yyyy HH:mm:ss}%n"/>
		
	</layout> 
  </appender>
  
  
  <!--JDBC Appender: A logger attached to this appender logs all statements to 
      the database. 
  --> 

  <appender name="MifosJDBCAppender" class="org.mifos.framework.components.logger.MifosJDBCAppender"> 
	<!--<param name="Threshold" value="ERROR"/> -->
	<!-- Parameters being passed for testing. The actual parameters will be retrieved from a data source -->
	<param name="driver" value="com.mysql.jdbc.Driver"/> 
	<!--Test parameter: Location of the database -->
	<param name="URL" value="jdbc:mysql://localhost:3306/test"/> 
	<!--Test parameter: User name of the user -->
	<param name="user" value="root"/> 
	<!--Test parameter: Password of the user -->
	<param name="password" value="<PASSWORD>"/> 
	<!--Layout class for the JDBC Appender -->
	<layout class="org.mifos.framework.components.logger.MifosPatternLayout"> 
	<!-- Appender is associated with the pattern layout which prints the Level of 
         logging,the category, the class , method, the line number from where the log statement was issued , 
         the log statement and the date 
    -->
	<param name="ConversionPattern" value="INSERT INTO logmessages (LEVEL,MODULE_NAME,CLASS_NAME,METHOD_NAME,LINE_NUMBER,MESSAGE,DATE ) 
		VALUES ('%-3p',  '%c', '%C{1}','%M','%L', '%m', '%d{dd MMM yyyy HH:mm:ss}')"/> 
		
	</layout> 
  </appender> 
  
  <!-- Category type org.mifos. -->
  <category name="org.mifos" additivity="false"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
	
	<!-- Denotes the console appender -->
	<appender-ref ref="MifosAppender"/> 
	
	<!-- Denotes the daily rolling file appender -->
	<appender-ref ref="MifosRollingFileAppender"/>
	
	<!-- Denotes the jdbc appender -->
	<!-- <appender-ref ref="MifosJDBCAppender"/>-->

 </category>
 
 <!-- Category type org.mifos.framework -->
  <category name="org.mifos.framework" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Category type org.mifos.application.customer.customernote for CustomerNote -->
  <category name="org.mifos.application.customer.customernote" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <category name="org.mifos.application.customer.business.CustomerBO" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>

    <!-- Category type org.mifos.application.personnel for Personnel  -->
  <category name="org.mifos.application.personnel" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>

  <!-- Category type org.mifos.framework.components.configuration for Configuration  -->
  <category name="org.mifos.framework.components.configuration" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
    <!-- Category type org.mifos.application.group for Group  -->
  <category name="org.mifos.application.group" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
    <!-- Category type org.mifos.application.center for Center  -->
  <category name="org.mifos.application.center" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
   <!-- Category type org.mifos.application.center for Center  -->
  <category name="org.mifos.application.client" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Category type org.mifos.application.login for Login  -->
  <category name="org.mifos.application.login" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Category type org.mifos.application.productdefinition for Product Definition  -->
  <category name="org.mifos.application.productdefinition" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Logger for  Accounts  -->
  <category name="org.mifos.application.accounts" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Logger for  Customer Search  -->
  <category name="org.mifos.application.customersearch" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Logger for  Fees  -->
  <category name="org.mifos.application.fees" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  <!-- roles and permission logger -->
  <category name="org.mifos.application.roleandpermission" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
<!-- roles and permission logger -->   

   <!-- meeting logger --> 
   <category name="org.mifos.application.meeting" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>  
   
  <!-- meeting logger -->

  <!-- office logger -->
   <category name="org.mifos.application.office" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!--  office logger -->
  <category name="org.mifos.framework.components.repaymentschedule" additivity="true"> 
  	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
  	<priority value="ERROR"/> 
  </category>
  
  <category name="org.mifos.framework.components.audit" additivity="true"> 
  	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
  	<priority value="ERROR"/> 
  </category>
   
   <!-- collection sheet logger -->
   <category name="org.mifos.application.collsheet" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
   
   <!-- Bulk Entry logger -->
   <category name="org.mifos.application.bulkentry" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- CollectionSheet  logger -->
   <category name="org.mifos.application.collectionsheet" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
   
  <!-- Root Logger -->
  <root>
    <priority value ="ERROR" />
    <appender-ref ref="MifosAppender"/>
  </root>

</log4j:configuration>
<commit_msg>Write logs to current directory (Mifos_log.log) rather than /Mifos_log.log (which will either be the root of the current drive on Windows, I think, or / on unix (rarely writable)).<commit_after><?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<!--
Log4j configuration file for MIFOS.  The intention is to move this
to conf/log4j.xml, but this has not yet been done.  Also, there
should be a my.log4j.xml or some such mechanism for overriding
the location of Mifos_log.log.
-->

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
  
  <!--Console Appender: A logger attached to this appender logs all statements to the console --> 
  <appender name="MifosAppender" class="org.apache.log4j.ConsoleAppender">
    <!-- Appender is associated with the pattern layout which prints the Level of 
         logging,the category, the class , method, the line number from where the log statement was issued , 
         the log statement and the date 
    -->
    <layout class="org.mifos.framework.components.logger.MifosPatternLayout">
<!--    <layout class="org.apache.log4j.PatternLayout"> -->
		<param name="ConversionPattern" value="%-3p, %c, %C{1}, %M , %L, %m, %d{dd MMM yyyy HH:mm:ss}%n"/>
	</layout>
  </appender>
  
  <!--Daily rolling Appender: A logger attached to this appender logs all statements to the specified file.
   	   The underlying file is rolled over at midnight. 
      
  --> 
  <appender name="MifosRollingFileAppender" class="org.apache.log4j.DailyRollingFileAppender">
    <!-- Name of the file. At midnight a new file with the name Mifos_log.log.date is created -->
    <param name="File" value="Mifos_log.log"/>
    <!-- Rolling Schedule: Rolls over at midnight. Hence new file will be rolling.log.newDate -->
    <param name="DatePattern" value="'.'yyyy-MM-dd"/>
  
	<!--Layout class for the Daily Rolling File Appender -->
	<layout class="org.mifos.framework.components.logger.MifosPatternLayout"> 
	<!-- Appender is associated with the pattern layout which prints the Level of 
         logging,the category, the class , method, the line number from where the log statement was issued , 
         the log statement and the date 
    -->
	<param name="ConversionPattern" value="%-3p, %c, %C{1}, %M , %L, %m, %d{dd MMM yyyy HH:mm:ss}%n"/>
		
	</layout> 
  </appender>
  
  
  <!--JDBC Appender: A logger attached to this appender logs all statements to 
      the database. 
  --> 

  <appender name="MifosJDBCAppender" class="org.mifos.framework.components.logger.MifosJDBCAppender"> 
	<!--<param name="Threshold" value="ERROR"/> -->
	<!-- Parameters being passed for testing. The actual parameters will be retrieved from a data source -->
	<param name="driver" value="com.mysql.jdbc.Driver"/> 
	<!--Test parameter: Location of the database -->
	<param name="URL" value="jdbc:mysql://localhost:3306/test"/> 
	<!--Test parameter: User name of the user -->
	<param name="user" value="root"/> 
	<!--Test parameter: Password of the user -->
	<param name="password" value="<PASSWORD>"/> 
	<!--Layout class for the JDBC Appender -->
	<layout class="org.mifos.framework.components.logger.MifosPatternLayout"> 
	<!-- Appender is associated with the pattern layout which prints the Level of 
         logging,the category, the class , method, the line number from where the log statement was issued , 
         the log statement and the date 
    -->
	<param name="ConversionPattern" value="INSERT INTO logmessages (LEVEL,MODULE_NAME,CLASS_NAME,METHOD_NAME,LINE_NUMBER,MESSAGE,DATE ) 
		VALUES ('%-3p',  '%c', '%C{1}','%M','%L', '%m', '%d{dd MMM yyyy HH:mm:ss}')"/> 
		
	</layout> 
  </appender> 
  
  <!-- Category type org.mifos. -->
  <category name="org.mifos" additivity="false"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
	
	<!-- Denotes the console appender -->
	<appender-ref ref="MifosAppender"/> 
	
	<!-- Denotes the daily rolling file appender -->
	<appender-ref ref="MifosRollingFileAppender"/>
	
	<!-- Denotes the jdbc appender -->
	<!-- <appender-ref ref="MifosJDBCAppender"/>-->

 </category>
 
 <!-- Category type org.mifos.framework -->
  <category name="org.mifos.framework" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Category type org.mifos.application.customer.customernote for CustomerNote -->
  <category name="org.mifos.application.customer.customernote" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <category name="org.mifos.application.customer.business.CustomerBO" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>

    <!-- Category type org.mifos.application.personnel for Personnel  -->
  <category name="org.mifos.application.personnel" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>

  <!-- Category type org.mifos.framework.components.configuration for Configuration  -->
  <category name="org.mifos.framework.components.configuration" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
    <!-- Category type org.mifos.application.group for Group  -->
  <category name="org.mifos.application.group" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
    <!-- Category type org.mifos.application.center for Center  -->
  <category name="org.mifos.application.center" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
   <!-- Category type org.mifos.application.center for Center  -->
  <category name="org.mifos.application.client" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Category type org.mifos.application.login for Login  -->
  <category name="org.mifos.application.login" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Category type org.mifos.application.productdefinition for Product Definition  -->
  <category name="org.mifos.application.productdefinition" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Logger for  Accounts  -->
  <category name="org.mifos.application.accounts" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Logger for  Customer Search  -->
  <category name="org.mifos.application.customersearch" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- Logger for  Fees  -->
  <category name="org.mifos.application.fees" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  <!-- roles and permission logger -->
  <category name="org.mifos.application.roleandpermission" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
<!-- roles and permission logger -->   

   <!-- meeting logger --> 
   <category name="org.mifos.application.meeting" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>  
   
  <!-- meeting logger -->

  <!-- office logger -->
   <category name="org.mifos.application.office" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!--  office logger -->
  <category name="org.mifos.framework.components.repaymentschedule" additivity="true"> 
  	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
  	<priority value="ERROR"/> 
  </category>
  
  <category name="org.mifos.framework.components.audit" additivity="true"> 
  	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
  	<priority value="ERROR"/> 
  </category>
   
   <!-- collection sheet logger -->
   <category name="org.mifos.application.collsheet" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
   
   <!-- Bulk Entry logger -->
   <category name="org.mifos.application.bulkentry" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
  
  <!-- CollectionSheet  logger -->
   <category name="org.mifos.application.collectionsheet" additivity="true"> 
	<!-- Level of logging. Any log statement of level less than ERROR will not be logged -->
	<priority value="ERROR"/> 
  </category>
   
  <!-- Root Logger -->
  <root>
    <priority value ="ERROR" />
    <appender-ref ref="MifosAppender"/>
  </root>

</log4j:configuration>

{'fraction_non_alphanumeric': 0.1420271812428675, 'fraction_numerical': 0.002593630044610437, 'mean_word_length': 3.451396906026322, 'pattern_counts': {'":': 0, '<': 337, '<?xml version=': 2, '>': 337, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 8}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4267939', 'n_tokens_mistral': 5718, 'n_tokens_neox': 5467, 'n_words': 1881}