-
Notifications
You must be signed in to change notification settings - Fork 0
/
content.json
1 lines (1 loc) · 49.2 KB
/
content.json
1
{"meta":{"title":"Sonder Tara","subtitle":"","description":"","author":"sonder tara","url":"http://blog.sondertara.com","root":"/"},"pages":[{"title":"404 Not Found","date":"2019-11-11T09:17:19.294Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"404.html","permalink":"http://blog.sondertara.com/404.html","excerpt":"","text":"404 Not Found **很抱歉,您访问的页面不存在** 可能是输入地址有误或该地址已被删除"},{"title":"关于","date":"2019-11-11T09:17:23.203Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"about/index.html","permalink":"http://blog.sondertara.com/about/index.html","excerpt":"","text":"[][3] [][4] [][5] [][6] 这是测试博客,请随意留言,但是我不会回复 关于主题本站主题是:Material X One More Thing懒加载占位图如果喜欢请拿去:图片链接 欢迎灌水"},{"title":"","date":"2019-11-11T09:17:23.421Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"projects/index.html","permalink":"http://blog.sondertara.com/projects/index.html","excerpt":"","text":""},{"title":"我的朋友们","date":"2019-11-11T09:17:23.403Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"friends/index.html","permalink":"http://blog.sondertara.com/friends/index.html","excerpt":"","text":"各位大佬想交换友链的话可以在下方留言,必须要有名称、头像链接、和至少一个标签哦~ 名称: xaoxuu’s blog头像: https://img.vim-cn.com/76/c339fd7092750f472da9ad17bd7c0081a1f0e2.jpg网址: https://xaoxuu.com/blog/标签: iOS"},{"title":"所有分类","date":"2019-11-11T09:17:23.396Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"blog/categories/index.html","permalink":"http://blog.sondertara.com/blog/categories/index.html","excerpt":"","text":""},{"title":"所有标签","date":"2019-11-11T09:17:23.390Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"blog/tags/index.html","permalink":"http://blog.sondertara.com/blog/tags/index.html","excerpt":"","text":""}],"posts":[{"title":"logback 配置","slug":"logback-配置","date":"2019-11-14T06:09:57.000Z","updated":"2019-11-14T06:25:40.880Z","comments":true,"path":"2019/11/14/logback-配置/","link":"","permalink":"http://blog.sondertara.com/2019/11/14/logback-%E9%85%8D%E7%BD%AE/","excerpt":"几种关于logback最佳配置","text":"几种关于logback最佳配置 配置样例第一种12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576<?xml version="1.0" encoding="UTF-8"?><configuration> <property name="server_name" value="operation" /> <property name="log_dir" value="/data/logs/operation-service" /> <property name="maxFileSize" value="50MB" /> <property name="maxHistory" value="180" /> <!-- 控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符--> <pattern>%date{yyyy-MM-dd HH:mm:ss} | %highlight(%-5level) | %boldYellow(%thread) | %boldGreen(%logger) | %msg%n</pattern> </encoder> </appender> <!-- info日志 appender --> <appender name="INFO" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 按天回滚 daily --> <fileNamePattern>${log_dir}/${server_name}-info-%d{yyyy-MM-dd}-%i.log</fileNamePattern> <!-- 日志最大的历史 180天 --> <maxHistory>${maxHistory}</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <!-- maxFileSize:这是活动文件的大小,默认值是10MB,这里设置为50MB --> <maxFileSize>${maxFileSize}</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符--> <pattern>%date{yyyy-MM-dd HH:mm:ss} | %highlight(%-5level) | %boldYellow(%thread) | %boldGreen(%logger) | %msg%n</pattern> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <!-- 只打印info日志 --> <level>INFO</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> </appender> <!-- 出错日志 appender --> <appender name="ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 按天回滚 daily --> <fileNamePattern>${log_dir}/${server_name}-error-%d{yyyy-MM-dd}-%i.log</fileNamePattern> <!-- 日志最大的历史 180天 --> <maxHistory>${maxHistory}</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <!-- maxFileSize:这是活动文件的大小,默认值是10MB,这里设置为50MB --> <maxFileSize>${maxFileSize}</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符--> <pattern>%date{yyyy-MM-dd HH:mm:ss} | %highlight(%-5level) | %boldYellow(%thread) | %boldGreen(%logger) | %msg%n</pattern> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <!-- 只打印错误日志 --> <level>ERROR</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> </appender> <!--mybatis sql日志 日志的级别需要是DEBUG--> <!--日志打印的包的范围,及分类日志文件存储 --> <logger name="com.chelizi.cloud.*.dao" level="DEBUG" additivity="false"></logger> <!--控制台和日志文件输出级别--> <root level="INFO" additivity = "false"> <appender-ref ref="STDOUT" /> <appender-ref ref="INFO" /> <appender-ref ref="ERROR" /> </root></configuration> 第二种123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157<?xml version="1.0" encoding="UTF-8"?><!---scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true-scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。- 当scan为true时,此属性生效。默认的时间间隔为1分钟-debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。-- configuration 子节点为 appender、logger、root--><configuration scan="true" scanPeriod="60 second" debug="false"> <!-- 负责写日志,控制台日志 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <!-- 一是把日志信息转换成字节数组,二是把字节数组写入到输出流 --> <encoder> <Pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%5level] [%thread] %logger{0} %msg%n</Pattern> <charset>UTF-8</charset> </encoder> </appender> <!-- 文件日志 --> <appender name="DEBUG" class="ch.qos.logback.core.FileAppender"> <file>debug.log</file> <!-- append: true,日志被追加到文件结尾; false,清空现存文件;默认是true --> <append>true</append> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <!-- LevelFilter: 级别过滤器,根据日志级别进行过滤 --> <level>DEBUG</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <encoder> <Pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%5level] [%thread] %logger{0} %msg%n</Pattern> <charset>UTF-8</charset> </encoder> </appender> <!-- 滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件 --> <appender name="INFO" class="ch.qos.logback.core.rolling.RollingFileAppender"> <File>info.log</File> <!-- ThresholdFilter:临界值过滤器,过滤掉 TRACE 和 DEBUG 级别的日志 --> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>INFO</level> </filter> <encoder> <Pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%5level] [%thread] %logger{0} %msg%n</Pattern> <charset>UTF-8</charset> </encoder> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 每天生成一个日志文件,保存30天的日志文件 - 如果隔一段时间没有输出日志,前面过期的日志不会被删除,只有再重新打印日志的时候,会触发删除过期日志的操作。 --> <fileNamePattern>info.%d{yyyy-MM-dd}.log</fileNamePattern> <maxHistory>30</maxHistory> <TimeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>100MB</maxFileSize> </TimeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> </appender > <!--<!– 异常日志输出 –>--> <!--<appender name="EXCEPTION" class="ch.qos.logback.core.rolling.RollingFileAppender">--> <!--<file>exception.log</file>--> <!--<!– 求值过滤器,评估、鉴别日志是否符合指定条件. 需要额外的两个JAR包,commons-compiler.jar和janino.jar –>--> <!--<filter class="ch.qos.logback.core.filter.EvaluatorFilter">--> <!--<!– 默认为 ch.qos.logback.classic.boolex.JaninoEventEvaluator –>--> <!--<evaluator>--> <!--<!– 过滤掉所有日志消息中不包含"Exception"字符串的日志 –>--> <!--<expression>return message.contains("Exception");</expression>--> <!--</evaluator>--> <!--<OnMatch>ACCEPT</OnMatch>--> <!--<OnMismatch>DENY</OnMismatch>--> <!--</filter>--> <!--<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">--> <!--<!– 触发节点,按固定文件大小生成,超过5M,生成新的日志文件 –>--> <!--<maxFileSize>5MB</maxFileSize>--> <!--</triggeringPolicy>--> <!--</appender>--> <appender name="ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>error.log</file> <encoder> <Pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%5level] [%thread] %logger{0} %msg%n</Pattern> <charset>UTF-8</charset> </encoder> <!-- 按照固定窗口模式生成日志文件,当文件大于20MB时,生成新的日志文件。 - 窗口大小是1到3,当保存了3个归档文件后,将覆盖最早的日志。 - 可以指定文件压缩选项 --> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> <fileNamePattern>error.%d{yyyy-MM}(%i).log.zip</fileNamePattern> <minIndex>1</minIndex> <maxIndex>3</maxIndex> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>100MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> <maxHistory>30</maxHistory> </rollingPolicy> </appender> <!-- 异步输出 --> <appender name ="ASYNC" class= "ch.qos.logback.classic.AsyncAppender"> <!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 --> <discardingThreshold >0</discardingThreshold> <!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --> <queueSize>512</queueSize> <!-- 添加附加的appender,最多只能添加一个 --> <appender-ref ref ="ERROR"/> </appender> <!-- - 1.name:包名或类名,用来指定受此logger约束的某一个包或者具体的某一个类 - 2.未设置打印级别,所以继承他的上级<root>的日志级别“DEBUG” - 3.未设置additivity,默认为true,将此logger的打印信息向上级传递; - 4.未设置appender,此logger本身不打印任何信息,级别为“DEBUG”及大于“DEBUG”的日志信息传递给root, - root接到下级传递的信息,交给已经配置好的名为“STDOUT”的appender处理,“STDOUT”appender将信息打印到控制台; --> <logger name="ch.qos.logback" /> <!-- - 1.将级别为“INFO”及大于“INFO”的日志信息交给此logger指定的名为“STDOUT”的appender处理,在控制台中打出日志, - 不再向次logger的上级 <logger name="logback"/> 传递打印信息 - 2.level:设置打印级别(TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF),还有一个特殊值INHERITED或者同义词NULL,代表强制执行上级的级别。 - 如果未设置此属性,那么当前logger将会继承上级的级别。 - 3.additivity:为false,表示此logger的打印信息不再向上级传递,如果设置为true,会打印两次 - 4.appender-ref:指定了名字为"STDOUT"的appender。 --> <logger name="com.weizhi.common.LogMain" level="INFO" additivity="false"> <appender-ref ref="STDOUT"/> <!--<appender-ref ref="DEBUG"/>--> <!--<appender-ref ref="EXCEPTION"/>--> <!--<appender-ref ref="INFO"/>--> <!--<appender-ref ref="ERROR"/>--> <appender-ref ref="ASYNC"/> </logger> <!-- - 根logger - level:设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,不能设置为INHERITED或者同义词NULL。 - 默认是DEBUG。 -appender-ref:可以包含零个或多个<appender-ref>元素,标识这个appender将会添加到这个logger --> <root level="DEBUG"> <appender-ref ref="STDOUT"/> <!--<appender-ref ref="DEBUG"/>--> <!--<appender-ref ref="EXCEPTION"/>--> <!--<appender-ref ref="INFO"/>--> <appender-ref ref="ASYNC"/> </root></configuration> 第三种dev 开发环境配置 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475<?xml version="1.0" encoding="UTF-8"?><!-- 不分级别同步文件日志输出配置 --><!-- 级别从高到低 OFF 、 FATAL 、 ERROR 、 WARN 、 INFO 、 DEBUG 、 TRACE 、 ALL --><!-- 日志输出规则 根据当前ROOT 级别,日志输出时,级别高于root默认的级别时 会输出 --><!-- 以下 每个配置的 filter 是过滤掉输出文件里面,会出现高级别文件,依然出现低级别的日志信息,通过filter 过滤只记录本级别的日志 --><!-- scan 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。 --><!-- scanPeriod 设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 --><!-- debug 当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 --><configuration scan="true" scanPeriod="60 seconds" debug="false" > <!-- logback项目名称 --> <property name="appName" value="noSeatBeltDev"/> <!-- 日志级别 --> <property name="logLevel" value="DEBUG"/> <!-- 日志地址 --> <property name="logPath" value="./logs"/> <!-- 最大保存时间 10天 --> <property name="maxHistory" value="10"/> <!-- 异步缓冲队列的深度,该值会影响性能.默认值为256 --> <property name="queueSize" value="512" /> <!-- lOGGER PATTERN 配置化输出语句 根据自己的喜好选择 --> <property name="logPattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %logger - %msg%n"/> <!-- %d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %logger - %msg%n --> <!-- %d{yyyy-MM-dd HH:mm:ss} %-4relative [%thread] %-5level %logger{35} - %msg %n --> <!-- [ %-5level] [%date{yyyy-MM-dd HH:mm:ss.SSS}] %logger{96} [%line] [%thread]- %msg%n --> <!-- 控制台打印日志的相关配置 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <!-- 日志格式 --> <encoder> <charset>UTF-8</charset> <pattern>${logPattern}</pattern> </encoder> </appender> <!-- 文件保存日志的相关配置 --> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- 保存日志文件的路径 --> <file>${logPath}/${appName}.log</file> <!-- 日志格式 --> <encoder> <pattern>${logPattern}</pattern> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>${logLevel}</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <!-- 循环政策:基于时间创建日志文件 --> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 日志文件名格式 --> <fileNamePattern>${logPath}/${appName}-%d{yyyy-MM-dd}.log</fileNamePattern> <!-- 最大保存时间--> <maxHistory>${maxHistory}</maxHistory> </rollingPolicy> </appender> <!--配置mybatis sql 日志--> <logger name="com.pf.org.cms.mapper" level="DEBUG"/> <!-- 基于INFO处理日志:具体控制台或者文件对日志级别的处理还要看所在appender配置的filter,如果没有配置filter,则使用root配置 --> <root level="${logLevel}"> <appender-ref ref="STDOUT" /> <!-- 开发可以只要控制台就OK --> <!-- <appender-ref ref="FILE" /> --> </root></configuration> 正式环境配置 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163<?xml version="1.0" encoding="UTF-8"?><!-- 分级别异步文件日志输出配置 --><!-- 级别从高到低 OFF 、 FATAL 、 ERROR 、 WARN 、 INFO 、 DEBUG 、 TRACE 、 ALL --><!-- 日志输出规则 根据当前ROOT 级别,日志输出时,级别高于root默认的级别时 会输出 --><!-- 以下 每个配置的 filter 是过滤掉输出文件里面,会出现高级别文件,依然出现低级别的日志信息,通过filter 过滤只记录本级别的日志 --><!-- scan 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。 --><!-- scanPeriod 设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 --><!-- debug 当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 --><configuration scan="true" scanPeriod="60 seconds" debug="false"> <!-- logback项目名称 --> <property name="appName" value="noSeatBeltProd"></property> <!-- 日志级别 DEBUGER INFO WARN ERROR --> <property name="logLevel" value="INFO"></property> <!-- 日志路径--> <property name="logPath" value="./logs"></property> <!-- 最大保存时间 30天--> <property name="maxHistory" value="3"/> <!-- 异步缓冲队列的深度,该值会影响性能.默认值为256 --> <property name="queueSize" value="256"></property> <!-- lOGGER PATTERN 根据个人喜好选择匹配 --> <property name="logPattern" value="[ %-5level] [%date{yyyy-MM-dd HH:mm:ss.SSS}] %logger{96} [%line] [%thread]- %msg%n"></property> <!-- %d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %logger - %msg%n --> <!-- %d{yyyy-MM-dd HH:mm:ss} %-4relative [%thread] %-5level %logger{35} - %msg %n --> <!-- [ %-5level] [%date{yyyy-MM-dd HH:mm:ss.SSS}] %logger{96} [%line] [%thread]- %msg%n --> <!-- 动态日志级别 --> <jmxConfigurator/> <!-- 控制台的标准输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <charset>UTF-8</charset> <pattern>${logPattern}</pattern> </encoder> </appender> <!-- DUBUG 日志记录 --> <appender name="FILE_DEBUG" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>DEBUG</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <file>${logPath}/${appName}_debug.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${logPath}/debug/${appName}_debug.log.%d{yyyy-MM-dd}.zip </fileNamePattern> <maxHistory>${maxHistory}</maxHistory> </rollingPolicy> <encoder> <pattern>${logPattern}</pattern> </encoder> </appender> <!-- INFO 级别的日志记录 --> <appender name="FILE_INFO" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>INFO</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <file>${logPath}/${appName}_info.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${logPath}/info/${appName}_info.log.%d{yyyy-MM-dd}.zip </fileNamePattern> <maxHistory>${maxHistory}</maxHistory> </rollingPolicy> <encoder> <pattern>${logPattern}</pattern> </encoder> </appender> <!-- WARN 级别的日志记录 --> <appender name="FILE_WARN" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>WARN</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <file>${logPath}/${appName}_warn.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${logPath}/warn/${appName}_warn.log.%d{yyyy-MM-dd}.zip </fileNamePattern> <maxHistory>${maxHistory}</maxHistory> </rollingPolicy> <encoder> <pattern>${logPattern}</pattern> </encoder> </appender> <!-- Error 级别的日志记录 --> <appender name="FILE_ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>ERROR</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <file>${logPath}/${appName}_error.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${logPath}/error/${appName}_error.log.%d{yyyy-MM-dd}.zip </fileNamePattern> <maxHistory>${maxHistory}</maxHistory> </rollingPolicy> <encoder> <pattern>${logPattern}</pattern> </encoder> </appender> <!-- ASYNC_LOG_DEBUG --> <appender name="ASYNC_LOG_DEBUG" class="ch.qos.logback.classic.AsyncAppender"> <!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 --> <discardingThreshold>0</discardingThreshold> <!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --> <queueSize>${queueSize}</queueSize> <appender-ref ref="FILE_DEBUG"/> </appender> <!-- ASYNC_LOG_INFO --> <appender name="ASYNC_LOG_INFO" class="ch.qos.logback.classic.AsyncAppender"> <!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 --> <discardingThreshold>0</discardingThreshold> <!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --> <queueSize>${queueSize}</queueSize> <appender-ref ref="FILE_INFO"/> </appender> <!-- ASYNC_LOG_WARN --> <appender name="ASYNC_LOG_WARN" class="ch.qos.logback.classic.AsyncAppender"> <!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 --> <discardingThreshold>0</discardingThreshold> <!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --> <queueSize>${queueSize}</queueSize> <appender-ref ref="FILE_WARN"/> </appender> <!--ASYNC_LOG_ERROR --> <appender name="ASYNC_LOG_ERROR" class="ch.qos.logback.classic.AsyncAppender"> <!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 --> <discardingThreshold>0</discardingThreshold> <!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --> <queueSize>${queueSize}</queueSize> <appender-ref ref="FILE_ERROR"/> </appender> <!-- 日志的记录级别 --> <!-- 在定义后引用APPENDER --> <root level="${logLevel}"> <!-- 控制台 --> <appender-ref ref="STDOUT"/> <!-- 具体的日志级别和文件的配置 --> <appender-ref ref="ASYNC_LOG_DEBUG"/> <appender-ref ref="ASYNC_LOG_INFO"/> <appender-ref ref="ASYNC_LOG_WARN"/> <appender-ref ref="ASYNC_LOG_ERROR"/> </root></configuration>","categories":[],"tags":[{"name":"java","slug":"java","permalink":"http://blog.sondertara.com/tags/java/"}]},{"title":"test","slug":"test","date":"2019-11-11T07:52:19.000Z","updated":"2019-11-11T09:01:12.315Z","comments":true,"path":"2019/11/11/test/","link":"","permalink":"http://blog.sondertara.com/2019/11/11/test/","excerpt":"这是摘要","text":"这是摘要 this is a test 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657public interface InsuranceSendMqHelperSettlementService { /** * 创建时增加相关字段 * * @param insurancePolicyDTO * @param insurancePolicyDO * @param insurancePolicyRecordDO * @return */ InsurancePolicyDTO setInsurancePolicyDTOWhenCreate(InsurancePolicyDTO insurancePolicyDTO, InsurancePolicyDO insurancePolicyDO, InsurancePolicyRecordDO insurancePolicyRecordDO); /** * 加保时增加相关字段 * * @param insurancePolicyDTO * @param insurancePolicyAddRecordDO * @return */ InsurancePolicyDTO setInsurancePolicyDTOWhenAdd(InsurancePolicyDTO insurancePolicyDTO, InsurancePolicyAddRecordDO insurancePolicyAddRecordDO); /** * 批单时增加相关字段 * * @param insurancePolicyDTO * @param insurancePolicyCorrectRecordDO * @return */ InsurancePolicyDTO setInsurancePolicyDTOWhenCorrect(InsurancePolicyDTO insurancePolicyDTO, InsurancePolicyCorrectRecordDO insurancePolicyCorrectRecordDO); /** * 退保时增加相关字段 * * @param insurancePolicyDTO * @param insurancePolicyReturnRecordDO * @return */ InsurancePolicyDTO setInsurancePolicyDTOWhenReturn(InsurancePolicyDTO insurancePolicyDTO, InsurancePolicyReturnRecordDO insurancePolicyReturnRecordDO); /** * 过户时增加相关字段 * * @param insurancePolicyDTO * @param insurancePolicyTransferRecordDO * @return */ InsurancePolicyDTO setInsurancePolicyDTOWhenTransfer(InsurancePolicyDTO insurancePolicyDTO, InsurancePolicyTransferRecordDO insurancePolicyTransferRecordDO); /** * 更新时增加相关字段 * * @param insurancePolicyDTO * @param insurancePolicyDO * @param recordId * @return */ InsurancePolicyDTO setInsurancePolicyDTOWhenUpdate(InsurancePolicyDTO insurancePolicyDTO, InsurancePolicyDO insurancePolicyDO, Integer recordId, Integer updateType);}","categories":[],"tags":[]},{"title":"都走了","slug":"go_away","date":"2019-11-11T03:02:05.000Z","updated":"2019-11-11T03:28:18.726Z","comments":true,"path":"2019/11/11/go_away/","link":"","permalink":"http://blog.sondertara.com/2019/11/11/go_away/","excerpt":"","text":"Ta们都走了1234我也想要时刻都被人给保护着也像我给你做早餐一样地被你照顾着但或许你没有办法成为那个照顾者所以我想跟你分开 再也不要复合","categories":[],"tags":[]},{"title":"vim-cn.sh","slug":"https://xaoxuu.com/wiki/vim-cn.sh/","date":"2018-09-21T16:00:00.000Z","updated":"2019-01-08T16:00:00.000Z","comments":true,"path":"2018/09/22/https://xaoxuu.com/wiki/vim-cn.sh//","link":"","permalink":"http://blog.sondertara.com/2018/09/22/https:/xaoxuu.com/wiki/vim-cn.sh/","excerpt":"img.vim-cn.com是一个十分干净好用的图床,本站以及博客中的所有图片都是使用的这个图床。 所以,这是一个快速批量上传图片的脚本。","text":"img.vim-cn.com是一个十分干净好用的图床,本站以及博客中的所有图片都是使用的这个图床。 所以,这是一个快速批量上传图片的脚本。","categories":[{"name":"Dev","slug":"Dev","permalink":"http://blog.sondertara.com/categories/Dev/"},{"name":"Shell Scripts","slug":"Dev/Shell-Scripts","permalink":"http://blog.sondertara.com/categories/Dev/Shell-Scripts/"}],"tags":[{"name":"shell","slug":"shell","permalink":"http://blog.sondertara.com/tags/shell/"}],"author":{"name":"xaoxuu","avatar":"https://cdn.jsdelivr.net/gh/xaoxuu/assets@master/avatar/avatar.png","url":"https://xaoxuu.com"}},{"title":"hexo.sh","slug":"https://xaoxuu.com/wiki/hexo.sh/","date":"2018-08-08T16:00:00.000Z","updated":"2019-04-03T16:00:00.000Z","comments":true,"path":"2018/08/09/https://xaoxuu.com/wiki/hexo.sh//","link":"","permalink":"http://blog.sondertara.com/2018/08/09/https:/xaoxuu.com/wiki/hexo.sh/","excerpt":"一个方便管理与发布hexo博客的脚本。","text":"一个方便管理与发布hexo博客的脚本。","categories":[{"name":"Dev","slug":"Dev","permalink":"http://blog.sondertara.com/categories/Dev/"},{"name":"Hexo","slug":"Dev/Hexo","permalink":"http://blog.sondertara.com/categories/Dev/Hexo/"}],"tags":[{"name":"Hexo","slug":"Hexo","permalink":"http://blog.sondertara.com/tags/Hexo/"},{"name":"shell","slug":"shell","permalink":"http://blog.sondertara.com/tags/shell/"}],"author":{"name":"xaoxuu","avatar":"https://cdn.jsdelivr.net/gh/xaoxuu/assets@master/avatar/avatar.png","url":"https://xaoxuu.com"}},{"title":"Material X","slug":"https://xaoxuu.com/wiki/material-x/","date":"2017-10-23T16:00:00.000Z","updated":"2019-04-05T16:00:00.000Z","comments":true,"path":"2017/10/24/https://xaoxuu.com/wiki/material-x//","link":"","permalink":"http://blog.sondertara.com/2017/10/24/https:/xaoxuu.com/wiki/material-x/","excerpt":"一个简约的卡片式Hexo博客主题。 ![](https://img.vim-cn.com/52/a54815c02ce232f11f54b2c547c1337828833c.png)","text":"一个简约的卡片式Hexo博客主题。 ![](https://img.vim-cn.com/52/a54815c02ce232f11f54b2c547c1337828833c.png)","categories":[{"name":"Dev","slug":"Dev","permalink":"http://blog.sondertara.com/categories/Dev/"},{"name":"Hexo","slug":"Dev/Hexo","permalink":"http://blog.sondertara.com/categories/Dev/Hexo/"}],"tags":[{"name":"Hexo","slug":"Hexo","permalink":"http://blog.sondertara.com/tags/Hexo/"}],"author":{"name":"xaoxuu","avatar":"https://cdn.jsdelivr.net/gh/xaoxuu/assets@master/avatar/avatar.png","url":"https://xaoxuu.com"}},{"title":"Images","slug":"test/images","date":"2013-12-26T14:46:49.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/26/test/images/","link":"","permalink":"http://blog.sondertara.com/2013/12/26/test/images/","excerpt":"","text":"This is a image test post.","categories":[],"tags":[]},{"title":"test/no-title","slug":"test/no-title","date":"2013-12-25T14:57:49.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/25/test/no-title/","link":"","permalink":"http://blog.sondertara.com/2013/12/25/test/no-title/","excerpt":"","text":"This post doesn’t have a title. Make sure it’s accessible.","categories":[],"tags":[]},{"title":"Excerpts","slug":"test/excerpts","date":"2013-12-24T16:23:23.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/25/test/excerpts/","link":"","permalink":"http://blog.sondertara.com/2013/12/25/test/excerpts/","excerpt":"The following contents should be invisible in home/archive page.","text":"The following contents should be invisible in home/archive page. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce eget urna vitae velit eleifend interdum at ac nisi. In nec ligula lacus. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed eu cursus erat, ut dapibus quam. Aliquam eleifend dolor vitae libero pharetra adipiscing. Etiam adipiscing dolor a quam tempor, eu convallis nulla varius. Aliquam sollicitudin risus a porta aliquam. Ut nec velit dolor. Proin eget leo lobortis, aliquam est sed, mollis mauris. Fusce vitae leo pretium massa accumsan condimentum. Fusce malesuada gravida lectus vel vulputate. Donec bibendum porta nibh ut aliquam. Sed lorem felis, congue non fringilla eu, aliquam eu eros. Curabitur orci libero, mollis sed semper vitae, adipiscing in lectus. Aenean non egestas odio. Donec sollicitudin nisi quis lorem gravida, in pharetra mauris fringilla. Duis sit amet faucibus dolor, id aliquam neque. In egestas, odio gravida tempor dictum, mauris felis faucibus purus, sit amet commodo lacus diam vitae est. Ut ut quam eget massa semper sodales. Aenean non ipsum cursus, blandit lectus in, ornare odio. Curabitur ultrices porttitor vulputate.","categories":[],"tags":[]},{"title":"Videos","slug":"test/videos","date":"2013-12-24T16:19:15.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/25/test/videos/","link":"","permalink":"http://blog.sondertara.com/2013/12/25/test/videos/","excerpt":"","text":"This is a video test post. Youtube Vimeo","categories":[],"tags":[]},{"title":"Gallery Post","slug":"test/gallery-post","date":"2013-12-24T16:16:18.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/25/test/gallery-post/","link":"","permalink":"http://blog.sondertara.com/2013/12/25/test/gallery-post/","excerpt":"","text":"This post contains 4 photos: Widescreen wallpaper Portrait photo Dual widescreen wallpaper Small photo All photos should be displayed properly. From Wallbase.cc","categories":[],"tags":[]},{"title":"Tag Plugins","slug":"test/tag-plugins","date":"2013-12-24T16:14:39.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/25/test/tag-plugins/","link":"","permalink":"http://blog.sondertara.com/2013/12/25/test/tag-plugins/","excerpt":"This post is used for testing tag plugins. See docs for more info.","text":"This post is used for testing tag plugins. See docs for more info. Block QuoteNormal blockquote Praesent diam elit, interdum ut pulvinar placerat, imperdiet at magna. Quote from a bookDo not just seek happiness for yourself. Seek happiness for all. Through kindness. Through mercy. David LevithanWide Awake Quote from TwitterNEW: DevDocs now comes with syntax highlighting. http://devdocs.io @DevDocstwitter.com/devdocs/status/356095192085962752 Quote from an article on the webEvery interaction is both precious and an opportunity to delight. Seth GodinWelcome to Island Marketing Code BlockNormal code block1alert('Hello World!'); With captionArray.map1array.map(callback[, thisArg]) With caption and URL.compactUnderscore.js12.compact([0, 1, false, 2, ‘’, 3]);=> [1, 2, 3] With marked linesLine 1,7-8,10 should be marked with different color. 1234567891011const http = require('http');const hostname = '127.0.0.1';const port = 1337;http.createServer((req, res) => { res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('Hello World\\n');}).listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`);}); Note: Theme’s style should support .highlight.line.marked (recommend to use the selection or current line color). Gist jsFiddle PullquoteLeftLorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas tempus molestie arcu, et fringilla mauris placerat ac. Nullam luctus bibendum risus. Ut cursus sed ipsum feugiat egestas. Suspendisse elementum, velit eu consequat consequat, augue lorem dapibus libero, eget pulvinar dolor est sit amet nulla. Suspendisse a porta tortor, et posuere mi. Pellentesque ultricies, mi quis volutpat malesuada, erat felis vulputate nisl, ac congue ante tortor ut ante. Proin aliquam sem vel mauris tincidunt, eget scelerisque tortor euismod. Nulla tincidunt enim nec commodo dictum. Mauris id sapien et orci gravida luctus id ut dui. In vel vulputate odio. Duis vel turpis molestie, scelerisque enim eu, lobortis eros. Cras at ipsum gravida, sagittis ante vel, viverra tellus. Nunc mauris turpis, elementum ullamcorper nisl pretium, ultrices cursus justo. Mauris porttitor commodo eros, ac ornare orci interdum in. Cras fermentum cursus leo sed mattis. In dignissim lorem sem, sit amet elementum mauris venenatis ac. RightLorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ligula justo, lobortis sit amet semper vel, dignissim sit amet libero. Praesent ac tempus ligula. Maecenas at gravida odio. Etiam tristique volutpat lacus eu faucibus. Donec non tempus arcu. Phasellus adipiscing, mauris nec mollis egestas, ipsum nunc auctor velit, et rhoncus lorem ipsum at ante. Praesent et sem in velit volutpat auctor. Duis vel mauris nulla. Maecenas mattis interdum ante, quis sagittis nibh cursus et. Nulla facilisi. Morbi convallis gravida tortor, ut fermentum enim gravida et. Nunc vel dictum nisl, non ultrices libero. Proin vestibulum felis eget orci consectetur lobortis. Vestibulum augue nulla, iaculis vitae augue vehicula, dignissim ultrices libero. Sed imperdiet urna et quam ultrices tincidunt nec ac magna. Etiam vel pharetra elit.","categories":[],"tags":[]},{"title":"www.google.com","slug":"test/link-post-without-title","date":"2013-12-24T15:44:13.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/24/test/link-post-without-title/","link":"http://www.google.com/","permalink":"http://blog.sondertara.com/2013/12/24/test/link-post-without-title/","excerpt":"","text":"This is a link post without a title. The title should be the link with or without protocol. Clicking on the link should open Google in a new tab or window.","categories":[],"tags":[]},{"title":"日本語テスト","slug":"test/日本語テスト","date":"2013-12-24T15:33:26.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/24/test/日本語テスト/","link":"","permalink":"http://blog.sondertara.com/2013/12/24/test/%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%83%86%E3%82%B9%E3%83%88/","excerpt":"","text":"This is a Japanese test post. 私は昨日ついにその助力家というのの上よりするたなけれ。 最も今をお話団はちょうどこの前後なかろでくらいに困りがいるたをは帰着考えたなかって、そうにもするでうたらない。 がたを知っないはずも同時に九月をいよいよたありた。 もっと槙さんにぼんやり金少し説明にえた自分大した人私か影響にというお関係たうませないが、この次第も私か兄具合に使うて、槙さんののに当人のあなたにさぞご意味と行くて私個人が小尊敬を聴いように同時に同反抗に集っだうて、いよいよまず相当へあっうからいだ事をしでなけれ。 それでそれでもご時日をしはずはたったいやと突き抜けるますて、その元がは行ったてという獄を尽すていけですた。 この中道具の日その学校はあなたごろがすまなりかとネルソンさんの考えるですん、辺の事実ないというご盲従ありたですと、爺さんのためが薬缶が結果までの箸の当時してならて、多少の十月にためからそういう上からとにかくしましないと触れべきものたで、ないうですと多少お人達したのでたた。 From すぐ使えるダミーテキスト - 日本語 Lorem ipsum","categories":[],"tags":[]},{"title":"中文測試","slug":"test/中文測試","date":"2013-12-24T15:31:30.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/24/test/中文測試/","link":"","permalink":"http://blog.sondertara.com/2013/12/24/test/%E4%B8%AD%E6%96%87%E6%B8%AC%E8%A9%A6/","excerpt":"","text":"This is a Chinese test post. 善我王上魚、產生資西員合兒臉趣論。畫衣生這著爸毛親可時,安程幾?合學作。觀經而作建。都非子作這!法如言子你關!手師也。 以也座論頭室業放。要車時地變此親不老高小是統習直麼調未,行年香一? 就竟在,是我童示讓利分和異種百路關母信過明驗有個歷洋中前合著區亮風值新底車有正結,進快保的行戰從:弟除文辦條國備當來際年每小腳識世可的的外的廣下歌洲保輪市果底天影;全氣具些回童但倒影發狀在示,數上學大法很,如要我……月品大供這起服滿老?應學傳者國:山式排只不之然清同關;細車是!停屋常間又,資畫領生,相們制在?公別的人寫教資夠。資再我我!只臉夫藝量不路政吃息緊回力之;兒足灣電空時局我怎初安。意今一子區首者微陸現際安除發連由子由而走學體區園我車當會,經時取頭,嚴了新科同?很夫營動通打,出和導一樂,查旅他。坐是收外子發物北看蘭戰坐車身做可來。道就學務。 國新故。 工步他始能詩的,裝進分星海演意學值例道……於財型目古香亮自和這乎?化經溫詩。只賽嚴大一主價世哥受的沒有中年即病行金拉麼河。主小路了種就小為廣不? From 亂數假文產生器 - Chinese Lorem Ipsum","categories":[],"tags":[]},{"title":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam justo turpis, tincidunt ac convallis id.","slug":"test/long-title","date":"2013-12-24T15:31:06.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/24/test/long-title/","link":"","permalink":"http://blog.sondertara.com/2013/12/24/test/long-title/","excerpt":"","text":"This post has a long title. Make sure the title displayed right.","categories":[],"tags":[]},{"title":"Link Post","slug":"test/link-post","date":"2013-12-24T15:30:04.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/24/test/link-post/","link":"http://www.google.com/","permalink":"http://blog.sondertara.com/2013/12/24/test/link-post/","excerpt":"","text":"This is a link post. Clicking on the link should open Google in a new tab or window.","categories":[],"tags":[]},{"title":"Elements","slug":"test/elements","date":"2013-12-24T15:29:08.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/24/test/elements/","link":"","permalink":"http://blog.sondertara.com/2013/12/24/test/elements/","excerpt":"","text":"The purpose of this post is to help you make sure all of HTML elements can display properly. If you use CSS reset, don’t forget to redefine the style by yourself. Heading 1Heading 2Heading 3Heading 4Heading 5Heading 6 ParagraphLorem ipsum dolor sit amet, test link consectetur adipiscing elit. Strong text pellentesque ligula commodo viverra vehicula. Italic text at ullamcorper enim. Morbi a euismod nibh. Underline text non elit nisl. Deleted text tristique, sem id condimentum tempus, metus lectus venenatis mauris, sit amet semper lorem felis a eros. Fusce egestas nibh at sagittis auctor. Sed ultricies ac arcu quis molestie. Donec dapibus nunc in nibh egestas, vitae volutpat sem iaculis. Curabitur sem tellus, elementum nec quam id, fermentum laoreet mi. Ut mollis ullamcorper turpis, vitae facilisis velit ultricies sit amet. Etiam laoreet dui odio, id tempus justo tincidunt id. Phasellus scelerisque nunc sed nunc ultricies accumsan. Interdum et malesuada fames ac ante ipsum primis in faucibus. Sed erat diam, blandit eget felis aliquam, rhoncus varius urna. Donec tellus sapien, sodales eget ante vitae, feugiat ullamcorper urna. Praesent auctor dui vitae dapibus eleifend. Proin viverra mollis neque, ut ullamcorper elit posuere eget. Praesent diam elit, interdum ut pulvinar placerat, imperdiet at magna. Maecenas ornare arcu at mi suscipit, non molestie tortor ultrices. Aenean convallis, diam et congue ultricies, erat magna tincidunt orci, pulvinar posuere mi sapien ac magna. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Praesent vitae placerat mauris. Nullam laoreet ante posuere tortor blandit auctor. Sed id ligula volutpat leo consequat placerat. Mauris fermentum dolor sed augue malesuada sollicitudin. Vivamus ultrices nunc felis, quis viverra orci eleifend ut. Donec et quam id urna cursus posuere. Donec elementum scelerisque laoreet. List TypesDefinition List (dl)Definition List TitleThis is a definition list division. Ordered List (ol) List Item 1 List Item 2 List Item 3 Unordered List (ul) List Item 1 List Item 2 List Item 3 Table Table Header 1 Table Header 2 Table Header 3 Division 1 Division 2 Division 3 Division 1 Division 2 Division 3 Division 1 Division 2 Division 3 Misc Stuff - abbr, acronym, sub, sup, etc.Lorem superscript dolor subscript amet, consectetuer adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. cite. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl. Praesent mattis, massa quis luctus fermentum, turpis mi volutpat justo, eu volutpat enim diam eget metus. Maecenas ornare tortor. Donec sed tellus eget sapien fringilla nonummy. NBA Mauris a ante. Suspendisse quam sem, consequat at, commodo vitae, feugiat in, nunc. Morbi imperdiet augue quis tellus. AVE","categories":[],"tags":[]},{"title":"Hello World","slug":"test/hello-world","date":"2013-12-24T09:49:32.000Z","updated":"2019-09-09T06:31:42.000Z","comments":true,"path":"2013/12/24/test/hello-world/","link":"","permalink":"http://blog.sondertara.com/2013/12/24/test/hello-world/","excerpt":"","text":"Welcome to Hexo! This is your very first post. Check documentation to learn how to use.","categories":[],"tags":[]}]}