java - How to make log file as a zip file? -


i have application, in use logback. logback.xml file :

<configuration>    <appender name="file" class="ch.qos.logback.core.fileappender">     <file>myapp.log</file>      <encoder>       <pattern>%date{"yyyy-mm-dd't'hh:mm:ss", utc} [%thread] %-5level %logger{36} %l - %msg%n</pattern>     </encoder>   </appender>    <appender name="stdout" class="ch.qos.logback.core.consoleappender">     <encoder>       <pattern>%date{"yyyy-mm-dd't'hh:mm:ss", utc} [%thread] %-5level %logger{36} %l - %msg%n</pattern>     </encoder>   </appender>    <logger name="source.main.fileprocess" level="info" />   <logger name="source.main.filereadwrite" level="info" />   <logger name="source.main.operatorloader" level="debug" />   <logger name="source.exception.validationexception" level="info" />   <logger name="source.validation.validation" level="info" />  <logger name="source.main.operatorloader" level="debug" />    <root level="debug">     <appender-ref ref="file" />     <appender-ref ref="stdout" />   </root> </configuration> 

now want if myapp.log file's size become 100 kb convert zip myapp.log . can me this?

you can use below, use in our project. creates folder month, , keeps daily file in in gz format

<timestamp key="date" datepattern="yyyy-mm-dd"/> <appender name="file" class="ch.qos.logback.core.rolling.rollingfileappender">    <file>myapp.log</file>    <append>true</append>    <rollingpolicy class="ch.qos.logback.core.rolling.timebasedrollingpolicy">       <filenamepattern>archived_logs_%d{yyyy-mm,aux}/myapp_%d{yyyy-mm-dd}.log.gz</filenamepattern>    </rollingpolicy>    <maxhistory>180</maxhistory>    <encoder>       <pattern>[%d{yyyy.mm.dd hh:mm:ss.sss}] [%t] [%p] [%logger{5}] [%x] %msg%n</pattern>    </encoder> </appender> 

Comments