如何统计日志中每个url的请求次数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何统计日志中每个url的请求次数相关的知识,希望对你有一定的参考价值。
参考技术A以前上线经常关注日志文件中 error 的情况,那么对于这种简单的想查看上线瞬间是否有服务报错应该怎么操作呢。
如果日志文件名成为: app_20220308.log
查看上线过程中日志是否有 error :
tail -f app_20220308.log | grep error
会用到 tail 和 grep 2个命令
简单说下这2个命令吧
tail :用于查看文件的内容
grep : 命令用于查找文件里符合条件的字符串。
那么此时当你好好的ip1上观察日志情况的时,你老板来了,对你说,‘比卡丘,去,统计下昨天各个接口访问量是多少’,那么此时你可能默默的打开百度了,正好看到我的文章了,兄弟来,我们造作起来
先直接告诉你答案
这句话的意思你,我要查询文件名为app_20220307.log中包含 api 的日志,对于每一行符合要求的数据,用 “ 进行分割,分割后取第二个字符,进行统计,然后对于其结果集,进行排序
咱们来一个命令一个命令解释下
grep : 上文已经说过了不在赘述了
akw 这个可是linux的三剑客之一,重头戏,压轴了
sor :用于将文本文件内容加以排序。sort 可针对文本文件的内容,以行为单位来排序。
那么 sort -n 之后是
uniq :用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用。uniq 可检查文本文件中重复出现的行列。
awk :是一种处理文本文件的语言,是一个强大的文本分析工具。
具体语法为:
这个命令有兴趣可以自学下,比较强大,对于日常日志分析有很大帮忙
简单介绍下本文用到的一些基础
注意: 在没有-F 时,按照默认空格分割,各个 $ 含义如下:
$0 就是整个记录行
$1 就是第一个字符
$4 就是第4个字符
现在可以搞定你老板的需求了,兄弟看你的了
SpringBoot 如何统计监控 SQL运行情况?
如同以前 c3p0、dbcp 数据源可以设置数据源连接初始化大小、最大连接数、等待时间、最小连接数 等一样,Druid 数据源同理可以进行设置;
配置 Druid web 监控 filter(WebStatFilter): 这个过滤器的作用就是统计 web 应用请求中所有的数据库信息,比如 发出的 sql 语句,sql 执行的时间、请求次数、请求的 url 地址、以及seesion 监控、数据库表的访问次数 等等。
配置 Druid 后台管理 Servlet(StatViewServlet): Druid 数据源具有监控的功能,并提供了一个 web 界面方便用户查看,类似安装 路由器 时,人家也提供了一个默认的 web 页面;需要设置 Druid 的后台管理页面的属性,比如 登录账号、密码 等;
注意:
Druid Spring Boot Starter 配置属性的名称完全遵照 Druid,可以通过 Spring Boot 配置文件来配置Druid数据库连接池和监控,如果没有配置则使用默认值。
application.yml
和 org.springframework.boot.autoconfigure.jdbc.DataSourceProperties
中找到;默认禁用 StatFilter,可以将其 enabled 设置为 true 来启用它。进行获取;DruidStatManagerFacade#getDataSourceStatDataList
该方法可以获取所有数据源的监控数据,
除此之外 DruidStatManagerFacade
还提供了一些其他方法,可以按需选择使用。
@RestController
@RequestMapping(value = "/druid")
public class DruidStatController
@GetMapping("/stat")
public Object druidStat()
// 获取数据源的监控数据
return DruidStatManagerFacade.getInstance().getDataSourceStatDataList();
怎么接私活?这个渠道你100%有用!请收藏!
喜欢文章,点个在看
以上是关于如何统计日志中每个url的请求次数的主要内容,如果未能解决你的问题,请参考以下文章