MyCat - 日志模块 - 条件查询日志 | 学习笔记

简介: 快速学习 MyCat - 日志模块 - 条件查询日志

开发者学堂课程【全面讲解开源数据库中间件 MyCat 使用及原理(四):MyCat - 日志模块 - 条件查询日志】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/758/detail/13325


MyCat - 日志模块 - 条件查询日志

内容介绍:

一、日志查询

二、测试

 

一、日志查询

查询日志想要在后台根据查询条件将对应的日志查询出来,并供业务人员查看即可。

image.png

接下来,我们将完成日志查询的操作

日志查询共有四个条件:操作人、操作方法、操作的返回值类型以及操作耗时。

我们根据这四个条件来完成条件查询。

1.在 mapper 包中定义查询方法

首先,在 mapper 包中定义查询方法,(查询返回的是链表,所以这里是 List )定义一个方法 search ,使用 mapper 来封装查询条件

代码如下:

import java. util.List;

import java.util.Map;

public interface OperateLogMapper {

╱**

*插入日志

*@param operatelog

*/

public void insert (TbOperatelog operatelog);

╱**

*根据条件查询日志

*param searchMap

@return

*/

public List<Tboperatelog> search (Map searchMap) ;

}

2.方法定义完成后,再定义 mapper 配置文件

在其中,需要编写一个 select 语句:

image.png

我们还需定义一个 operateLogResultMap,因为实体类与表结构中的字段并不对应,在实体类中使用驼峰命名,在这里使用的是下划线分割,所以要声明一个 operateLogResultMap 来映射数据库表结构中的字段以及实体类中的信息。

image.png

mapper 映射配置文件完成。

3.然后在 service 中定义一个接口方法:

(由于要考虑分页,所以这里要返回 Page )

/**

*根据条件查询日志列表(分页)

*param searchMap

*@return

*/

public Page search (Map searchMap, Inteqer page , Integer size);

4.接下来对接口方法进行实现

在实现接口方法过程中,由于要实现分页,需要使用 PageHelper 设置分页参数。

分页参数设置完成后,直接调用 operateLogMapper 中的 search 方法,将 searchMap 传入。然后得到一个 List,直接将该 List 返回,并且将 List 进行强制转换。

部分代码如下:

@Override

public Page search(Map searchMap,Integer page,Integer size){

//设置分页参数

PageHelper.startPage(page,size) ;

List<TbOperatelog> operatelogList = operateLogMapper.search(searchMap);

retupn (Page) operatelogList

}

service 层的方法实现完成。

5.接下来编写 controller 层

在其中编写一个方法:

@PostMapping ( " / search/ {page} /{ size} ")

public Result findPage (@RequestBody Map searchMap,@Pathvariable ( "page") Integer page,@Pathvariable( "size"){

Page p = operateLogService.search (searchMap,page,size);

long total = p.getTotal ( ) ;

//得到结果列表

List result = p.gstResult () ;

//封装

PageResult = new PageResult ( total,result);

return new Result ( flag: true,statusCode.OK,message: "查询成功" , pageResult);

}

对接口进行初始化

 

二、测试

先对当前的日志微服务进行重新启动,然后测试 search 方法:

image.png

得到查询结果:

image.png

在查询中,还可以去传递条件,查询的条件可以根据操作人、操作方法、返回值以及操作时间。这里以操作方法为例:

image.png

得到结果(将 show 方法过滤出来):

image.png

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
2月前
|
监控 安全 程序员
Python日志模块配置:从print到logging的优雅升级指南
从 `print` 到 `logging` 是 Python 开发的必经之路。`print` 调试简单却难维护,日志混乱、无法分级、缺乏上下文;而 `logging` 支持级别控制、多输出、结构化记录,助力项目可维护性升级。本文详解痛点、优势、迁移方案与最佳实践,助你构建专业日志系统,让程序“有记忆”。
269 0
|
7月前
|
存储 缓存 Apache
StarRocks+Paimon 落地阿里日志采集:万亿级实时数据秒级查询
本文介绍了阿里集团A+流量分析平台的日志查询优化方案,针对万亿级日志数据的写入与查询挑战,提出基于Flink、Paimon和StarRocks的技术架构。通过Paimon存储日志数据,结合StarRocks高效计算能力,实现秒级查询性能。具体包括分桶表设计、数据缓存优化及文件大小控制等措施,解决高并发、大数据量下的查询效率问题。最终,日志查询耗时从分钟级降至秒级,显著提升业务响应速度,并为未来更低存储成本、更高性能及更多业务场景覆盖奠定基础。
|
7月前
|
自然语言处理 监控 安全
阿里云发布可观测MCP!支持自然语言查询和分析多模态日志
阿里云可观测官方发布了Observable MCP Server,提供了一系列访问阿里云可观测各产品的工具能力,包含阿里云日志服务SLS、阿里云应用实时监控服务ARMS等,支持用户通过自然语言形式查询
957 0
阿里云发布可观测MCP!支持自然语言查询和分析多模态日志
|
Web App开发 存储 监控
iLogtail 开源两周年:UC 工程师分享日志查询服务建设实践案例
本文为 iLogtail 开源两周年的实践案例分享,讨论了 iLogtail 作为日志采集工具的优势,包括它在性能上超越 Filebeat 的能力,并通过一系列优化解决了在生产环境中替换 Filebeat 和 Logstash 时遇到的挑战。
484 101
|
9月前
|
SQL 存储 自然语言处理
让跨 project 联查更轻松,SLS StoreView 查询和分析实践
让跨 project 联查更轻松,SLS StoreView 查询和分析实践
195 1
|
SQL 存储 缓存
高基数 GroupBy 在 SLS SQL 中的查询加速
本文详细介绍了SLS中的高基数GroupBy查询加速技术。
340 103
|
11月前
|
存储 人工智能 JSON
RAG Logger:专为检索增强生成(RAG)应用设计的开源日志工具,支持查询跟踪、性能监控
RAG Logger 是一款专为检索增强生成(RAG)应用设计的开源日志工具,支持查询跟踪、检索结果记录、LLM 交互记录和性能监控等功能。
478 7
RAG Logger:专为检索增强生成(RAG)应用设计的开源日志工具,支持查询跟踪、性能监控
|
PyTorch 算法框架/工具
Pytorch学习笔记(七):F.softmax()和F.log_softmax函数详解
本文介绍了PyTorch中的F.softmax()和F.log_softmax()函数的语法、参数和使用示例,解释了它们在进行归一化处理时的作用和区别。
1352 1
Pytorch学习笔记(七):F.softmax()和F.log_softmax函数详解
|
监控 网络协议 CDN
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?