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

网站建设费做什么镇江网站营销推广

网站建设费做什么,镇江网站营销推广,php主机网站,韩国 网站设计我们经常会被问到这样一个问题。你接口返回的好慢呀#xff0c;能不能提升一下接口响应时间啊#xff1f;这个时候我们就需要去分析#xff0c;为什么慢#xff0c;慢在哪。而这首先应该做的就是确定接口返回时间过长确实是在服务内消耗的时间。而不是我们将请求发给网关或…我们经常会被问到这样一个问题。你接口返回的好慢呀能不能提升一下接口响应时间啊这个时候我们就需要去分析为什么慢慢在哪。而这首先应该做的就是确定接口返回时间过长确实是在服务内消耗的时间。而不是我们将请求发给网关或者nignx由nignx或者网关转发给我们服务的过程消耗时间。 这个时间我们就需要借助我们的acccess日志和out日志了。 1借助tomcat实现access日志打印 首先说一点总所周知的内容我们都知道tomcat是有access日志的所以简单通过tomcat配置实现应该不难。大概的配置如下都做了解释说明。 # 开启Tomcat的访问日志 server.tomcat.accesslog.enabledtrue# 指定日志文件的路径例如在当前项目根目录下生成名为 access.log 的日志文件 # 指定Tomcat访问日志文件的目录。默认值logs server.tomcat.accesslog.directory./ # 指定Tomcat访问日志文件的前缀。默认值access_log server.tomcat.accesslog.prefixaccess # 指定Tomcat访问日志文件的后缀。默认值.log server.tomcat.accesslog.suffix.log# 配置 Tomcat 访问日志文件名中日期部分的格式。默认值是 logback-ext表示使用 Logback 默认的日期格式 server.tomcat.accesslog.file-date-format.yyyy-MM-dd# 是用于配置 Tomcat 访问日志的格式模式 # 以下是一些常见的日志模式格式 # %h远程主机名 # %l远程登录名 # %u远程用户 # %t日期和时间使用 Common Log Format 的格式例如[10/Oct/2000:13:55:36 -0700] # %r请求的第一行 # %sHTTP状态码 # %b响应内容长度以字节为单位省略则表示 - # %{xxx}i请求头中的指定字段 # %{xxx}o响应头中的指定字段 server.tomcat.accesslog.pattern%h %l %u %t %r %s %b %D# Tomcat访问日志文件轮换时是否重命名旧日志文件 # 设置为 true则旧的访问日志文件在轮换时会被重命名文件名会添加一个时间戳或者序号作为后缀。 # 如果设置为 false则旧的访问日志文件不会被重命名而是直接覆盖或者删除。 server.tomcat.accesslog.rename-on-rotatefalse# 用于配置是否在Tomcat访问日志中记录请求的属性。默认为 false。 # 设置为 trueTomcat访问日志将包含额外的请求属性信息这些属性信息通常是通过Servlet容器或者应用程序添加到请求中的。 # 这些额外的属性可以包括HTTP请求的各种元数据例如请求的方法、协议、URI等等 server.tomcat.accesslog.request-attributes-enabledfalse# Tomcat访问日志的轮换策略。设置为 trueTomcat访问日志将在达到一定大小限制时进行轮换以防止日志文件过大。 # 一旦达到了指定的大小限制Tomcat会停止往当前日志文件中写入内容并创建一个新的日志文件继续记录访问日志。 server.tomcat.accesslog.rotatetrue# 设置Tomcat访问日志文件的最大大小。可以指定大小如 10MB 或 100KB也可以使用 -1 表示不限制大小默认为 -1。 server.tomcat.accesslog.max-file-size10MB# 设置HTTP POST请求的最大大小以字节为单位。默认值2097152字节即2MB # server.tomcat.max-http-post-size# 设置HTTP请求头的最大大小以字节为单位。默认值0表示不限制大小 # server.tomcat.max-http-header-size# 设置URI编码用于解析URL中的参数。默认值UTF-8 # server.tomcat.uri-encoding# 设置Tomcat服务器的最大线程数用于处理请求。默认值200 # server.tomcat.max-threads# 设置客户端和服务器之间的连接超时时间以毫秒为单位。默认值-1表示不设置超时 # server.tomcat.connection-timeout 我们配置好了然后兴致冲冲地去运行项目一看发现咋没打印呢我不是开启了tomcat日志了么 在 Tomcat 中访问日志是由 Tomcat 的 AccessLogValve 来处理的而不是由 Logback。因此如果已经在 Logback 中配置了日志输出可能会影响到 Tomcat 的访问日志的输出。 这里可能需要做别的配置我这里介绍几种方法。 2借助拦截器interceptor实现 package com.luojie.config.logconfig;import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;Configuration public class WebMvcConfig implements WebMvcConfigurer {Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(new AccessLogInterceptor());} } package com.luojie.config.logconfig;import lombok.extern.slf4j.Slf4j; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;Slf4j public class AccessLogInterceptor implements HandlerInterceptor {Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)throws Exception {log.info(From Interceptor Request IN URL: {} - Method: {} -IP:{}, request.getRequestURL(), request.getMethod(), request.getRemoteAddr());return true;}Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,ModelAndView modelAndView) throws Exception {// Do nothing}Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)throws Exception {// Do nothinglog.info(From Interceptor Request OUT URL: {} - Method: {} -IP:{}, request.getRequestURL(), request.getMethod(), request.getRemoteAddr());} } 3借助aop实现 package com.luojie.config.logconfig;import lombok.extern.slf4j.Slf4j; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Component;import javax.servlet.http.HttpServletRequest; import java.util.Arrays;Aspect // 表示该类是一个切面类 Component // 将该类注册为一个bean放入IOC容器 Slf4j public class LogAspectConfig {Autowiredprivate HttpServletRequest request;Pointcut(value execution(* com.luojie.controller.*.*(..)))public void pointcut() {}Before(value pointcut())public void before(JoinPoint joinPoint) {String name joinPoint.getSignature().getName(); // 获取方法名Object[] args joinPoint.getArgs();// 获取参数列表 // log.info(前置通知 开启调用方法名{} 参数{}, name, Arrays.toString(args));log.info( From AOP Request In URL: {} - Method: {} -IP:{}, request.getRequestURL(), request.getMethod(), request.getRemoteAddr());}After(value pointcut())public void after(JoinPoint joinPoint) {String name joinPoint.getSignature().getName(); // 获取方法名 // log.info(后置通知 开启调用方法名{}, name);log.info( From AOP Request Out URL: {} - Method: {} -IP:{}, request.getRequestURL(), request.getMethod(), request.getRemoteAddr());}}aop的使用不知道的可以详细查看Spring AOP基本认识与使用-CSDN博客 4修改logback.xml文件目的所有进出日志统一保存到同一个文件且无其它日志 ?xml version1.0 encodingUTF-8? configuration!-- 定义输出到控制台的日志记录器 --appender nameCONSOLE classch.qos.logback.core.ConsoleAppenderencoder!-- 设置日志输出格式 --pattern%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n/pattern !-- pattern${ACCESS_LOG_PATTERN}/pattern--/encoder/appenderappender nameFILE classch.qos.logback.core.rolling.RollingFileAppenderfilelogs/mylog.log/filerollingPolicy classch.qos.logback.core.rolling.FixedWindowRollingPolicy!-- 日志文件名称格式按日期滚动 --fileNamePatternlogs/mylog.%d{yyyy-MM-dd}.%i.log.zip/fileNamePattern!-- 最多保留的日志文件数量 --maxIndex30/maxIndexminIndex1/minIndex/rollingPolicytriggeringPolicy classch.qos.logback.core.rolling.SizeBasedTriggeringPolicy!-- 单个日志文件大小例如: 千字节:10KB 或 10kb;兆字节:10MB 或 10mb; 以及10GB 或 10gb--maxFileSize10MB/maxFileSize/triggeringPolicyencoderpattern%date [%thread] %-5level %logger{35} - %msg%n/pattern/encoder/appender!--打印数据库连接池日志信息--logger namecom.zaxxer.hikari levelDEBUG/!--打印sql信息--logger namecom.luojie.dao levelDEBUG/!--additivityfalse 确保特定类的日志不会传递给跟logger避免重复输出--logger namecom.luojie.config.logconfig levelINFO additivityfalseappender-ref refFILE//logger!-- 设置根日志级别为 INFO --root levelINFOappender-ref refCONSOLE/ !-- 将日志输出到控制台 --/root/configuration 5查看测试结果 希望对各位看官老爷有帮助如果可以的话能否请各位老爷点个赞关注一下博主呢在这里非常感谢各位老爷了。
http://www.zqtcl.cn/news/379715/

相关文章:

  • 如何将域名和网站绑定做网站找投资人
  • 网站开发 平台WordPress首页可见
  • 沧州做网站费用打开上海发布
  • 重庆潼南网站建设公司电话网站能调用一些字体
  • 摄影网站设计素材做彩票网站电话多少
  • 开网站公司企业管理网课
  • 相城高端网站建设施工建设集团网站
  • .电子商务网站的开发原则包括网络服务示范区创建情况
  • 网站如何做权重php做网站登陆验证
  • 昆山制造网站的地方网站建设 有聊天工具的吗
  • 自己做网站制作需要多少钱如何免费注册网站域名
  • 如何做网站美化怎样写网站文案
  • 做网站排名的wordpress 调整 行距
  • 三亚文明城市建设服务中心报名网站房地产活动策划网站
  • 休闲食品网站建设规划书常德做网站专业公司
  • 做美工好的网站网页设计排版布局
  • 网站建设公司合同模板下载wordpress微信公众平台开发教程
  • 快速wordpress 建网站免费代理游戏
  • 网站模板 寻模板大气宽屏网站模板企业源码带后台
  • 做图片推广的网站威海高端网站建设
  • 台州网站公司建站网站首页模板图片
  • 网站建设本科毕业设计论文网址
  • 泰州企业建站程序乐清网站建设公司
  • 微信小程序网站建设哪家好郑州建设网
  • 网站流量查询站长之家自己创业做原公司一样的网站
  • 哪有专做飞织鞋面的网站广州企业网站制作哪家好
  • 如何用域名做邮箱 网站站长工具5g
  • 威海 医院网站建设宝安专业网站设计公司
  • 营销企业网站建设步骤建筑 企业官网设计
  • 网站建设的内容网站怎么做视频的软件