当前位置: 首页 > news >正文

做网站的背景怎么调整大小360优化大师官方官网

做网站的背景怎么调整大小,360优化大师官方官网,福田公司股票,滨州做网站的公司背景 日志注入一般指的是恶意用户输出换行等内容,混淆正常的日志,导致排查问题是无法正确定位问题,因此,我们需要对要打印的日志内容进行过滤。 但是,如果是每个接口单独处理的话,成本较高,因此…

背景

日志注入一般指的是恶意用户输出换行等内容,混淆正常的日志,导致排查问题是无法正确定位问题,因此,我们需要对要打印的日志内容进行过滤。
但是,如果是每个接口单独处理的话,成本较高,因此,我们需要一个统一处理的机制。

当然,统一处理可能会误伤正常的日志,这个需要自己进行斟酌了。我们在绝大情况下不会在打印日志的内容中使用换行等特殊字符,所以这样处理我认为是比较稳妥的。

这个处理仅会对用户输入的参数进行处理,不会对堆栈的正常的内容处理,所以大部分的日志是可以正常打印出来的。

方案

springboot集成的logback,其配置文件是 org/springframework/boot/logging/logback/base.xml,其默认参数配置都在org/springframework/boot/logging/logback/defaults.xml。我们不打算修改这些配置,而是沿用。

我们对logback进行定制,spring集成的默认log_pattern为:-%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd'T'HH:mm:ss.SSSXXX}}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr(%applicationName[%15.15t]){faint} %clr(${LOG_CORRELATION_PATTERN:-}){faint}%clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}},中间可以全部不管,输出的重点就是靠后部分的%m,这个是一个Converter,对消息进行处理,默认是不进行任何处理,直接输出原消息,我们对他进行定制。

我们自定义自己的Converter:


import ch.qos.logback.classic.pattern.ClassicConverter;
import ch.qos.logback.classic.spi.ILoggingEvent;
import org.slf4j.helpers.MessageFormatter;/*** @author */
public class LineSeparatorConverter extends ClassicConverter {@Overridepublic String convert(ILoggingEvent event) {Object[] argumentArray = event.getArgumentArray();// 没有用户传入的参数,直接返回if (argumentArray == null || argumentArray.length == 0) {return event.getFormattedMessage();}Object[] argumentArrayProcessed = new Object[argumentArray.length];for (int i = 0; i < argumentArray.length; i++) {Object o = argumentArray[i];if (o == null || o instanceof Throwable) {argumentArrayProcessed[i] = o;} else {String oString = o.toString();argumentArrayProcessed[i] = cleanLineSeparator(oString);}}return getFormattedMessage(event.getMessage(), argumentArrayProcessed);}public String getFormattedMessage(String message, Object[] argumentArray) {String formattedMessage;if (argumentArray != null) {formattedMessage = MessageFormatter.arrayFormat(message, argumentArray).getMessage();} else {formattedMessage = message;}return formattedMessage;}private String cleanLineSeparator(String line) {if (line == null || line.isEmpty()) {return line;}return line.replace("\n", "\\n").replace("\r", "\\r");}}

然后,声明logback-spring.xml,使用spring的默认配置,并且覆盖%m的默认Converter,改成我们自己的

<?xml version="1.0" encoding="UTF-8"?><configuration scan="true" scanPeriod="60 seconds" debug="false"><include resource="org/springframework/boot/logging/logback/base.xml"/><!-- 将默认的输出器改为自定义输出器,会替换掉换行符,防止日志注入 --><conversionRule conversionWord="m"converterClass="xxx.LineSeparatorConverter"/></configuration>

如果放到了resources目录下,该文件应该可以正常识别到,不需要额外配置。
如果日志处理是一个maven的子模块,那就手动声明一下文件位置
logging.config=classpath:logback-spring.xml
如果放到其他目录,写成:logging.config=file:/xxx/xxx/logback-spring.xml

http://www.ritt.cn/news/24593.html

相关文章:

  • 温州网站制作建设郑州网
  • 有了域名怎么做自己得网站电脑培训中心
  • 做视频网站视频文件都存放在哪网络营销措施有哪些
  • 做网站需要哪些基本功能东莞网站建设哪家公司好
  • asp 网站 源码市场营销培训课程
  • 开发公司装饰装修合同范本简单seo快速排名网站优化
  • 做网站的设计理念自己怎么创建网站
  • phpcms怎么做网站怎么在百度上添加自己的店铺地址
  • 网站怎么做多语言展示关键词排名推广怎么做
  • 网站系统安全保护等级是必须做的搜索关键词排名优化服务
  • 做的网站提示磁盘空间不足今日热点新闻事件摘抄2022
  • 做网站要坚持百度地图导航
  • 常州做企业网站的公司百度seo查询
  • 有了源码怎么搭建网站企业qq怎么申请
  • 有什么发布做投标报价的网站优化推荐
  • 我想找网站帮忙做宣传网络推广工作好吗
  • 政府网站的建设方案开发一个app平台大概需要多少钱?
  • 深圳便宜做网站360推广登录入口官网
  • 石家庄网站制作哪家好百度网站统计
  • 网站设计费用价目表网站搜索
  • 沈阳专业做网站公司百度推广如何计费
  • linux宝塔面板做网站百度检索入口
  • 网站建设成本百度广告电话号码是多少
  • 网站前端做报名框代码百度基木鱼建站
  • b2b和c2c网站营销模式对比研究安徽网站推广
  • 怎么做二级网站武汉网络推广优化
  • 云相册网站怎么做网络做推广公司
  • 江门市做网站电商培训机构靠谱吗
  • 微网站上的一键导航怎么做邯郸seo
  • 设计官网首页谷歌seo公司