
Hi Kriti. This sounds an elegant solution. Maybe I will try without the properties file, simply using change of the properties in java only p.setProperty("FILE_SIZE", 200000); System.setProperties(p); Thanks, Xavier. ________________________________ From: Kriti Wadhwa <kriti.wadhwa@tcs.com> To: logback users list <logback-user@qos.ch> Cc: logback <logback-user@qos.ch> Sent: Monday, August 12, 2013 10:28 AM Subject: Re: [logback-user] Using configuration file and programatically changing configuration? Hi Xavier, Have a look at this thread, might be of some help: http://logback.10977.n7.nabble.com/Basic-example-of-programmatically-setting... In my application too there was a similar requirement, I did the following: Store values to be modified on the fly from UI in a properties(configuration) file, reset the logger context programmatically, logback.xml will read the configuration file and hence the configuration shall be modified. (Used Variable Substitution to implement this: http://logback.qos.ch/manual/configuration.html#variableSubstitution). example: # process_settings.properties : Configuration file (Set the values set from UI here, logback.xml will read this properties file to substitute the variables) FILE_SIZE=20000000 LOG_LEVEL=INFO BACKUP_COUNT=4 Use these values in logback.xml as follows: <?xmlversion="1.0" encoding="UTF-8"?> <configuration> <propertyresource="process_settings.properties" /> <appendername="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%d [%thread] %-5level %class{0} %msg%n</pattern> </encoder> </appender> <appendername="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>/var/log/xyz.log</file> <rollingPolicyclass="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> <fileNamePattern>/var/log/xyz.log.%i.gz</fileNamePattern> <minIndex>1</minIndex> <maxIndex>${BACKUP_COUNT}</maxIndex> </rollingPolicy> <triggeringPolicyclass="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>${FILE_SIZE}</maxFileSize> </triggeringPolicy> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %class{0} %msg%n</pattern> </encoder> </appender> <rootlevel="INFO"> <appender-refref="STDOUT" /> <appender-refref="FILE" /> </root> <loggername="com.test"> <levelvalue="${LOG_LEVEL}" /> </logger> </configuration> Sample JAVA Code: Set the values set in UI to properties file and reset the logger context as follows. LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory(); loggerContext.reset(); ContextInitializer ci = newContextInitializer(loggerContext); ci.autoConfig(); Hope this helps.. Regards, Kriti -----"Logback-user" <logback-user-bounces@qos.ch> wrote: ----- To: logback <logback-user@qos.ch>
From: Xavier Outhier <xouthier@yahoo.fr> Sent by: "Logback-user" <logback-user-bounces@qos.ch> Date: 08/09/2013 12:26PM Subject: [logback-user] Using configuration file and programatically changing configuration?
Hi,
the idea is to have to enable the user to change the config from the UI of the web applications (without accessing the server).
I would like to know if it is possible to have both a configuration file for LogBack for the default usage of the application and the configuration being modified programatically the fly when investigating issue. How to implement that? On way could be to write on the fly the configuration file when it is set to be reloaded automatically but is there an another way that would pause the reading from the config file and use the API?
Thanks,
Xavier. _______________________________________________ Logback-user mailing list Logback-user@qos.ch http://mailman.qos.ch/mailman/listinfo/logback-user
=====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you _______________________________________________ Logback-user mailing list Logback-user@qos.ch http://mailman.qos.ch/mailman/listinfo/logback-user