1、背景
某公司大数据调度任务主要调度周期为日和月,其中包含了集团限时考核任务。为了能够尽早的发现执行异常的任务,需要通过梧桐云原生分析型数据库查询和监控执行的SQL信息;然而梧桐云原生分析型数据库本身没有查询历史执行记录的功能,所以需要通过其他方法去实现。
2、查询历史SQL的好处
-
调试和优化SQL:通过查看历史SQL,开发人员可以分析和调试执行较慢的查询,找出优化点。
-
监控数据库活动:历史SQL记录可以帮助DBA监控哪些查询正在运行以及它们的执行频率,从而进行资源分配和权限管理。
-
审计和合规性:历史SQL可以用于审计目的,确保数据库的使用符合安全和合规标准。
-
统计和报告:历史SQL查询可以用于生成各种统计报告,比如用户活动报告、查询执行统计等。
-
回溯和问题解决:在出现故障或安全问题时,历史SQL可以用来回溯事件发生前后的数据库操作。
3、如何实现查询历史SQL
3.1 概述
使用 ElasticSearch 来实现审计日志的收集和分析。审计日志是记录系统或应用程序中发生的重要事件的一种可信证据,对于安全监控、问题跟踪和合规性审计都起着关键作用。通过使用ElasticSearch ,我们能够方便地收集来自各个源的审计日志,并进行灵活的查询、过滤和可视化分析。
3.2 前提条件
要使用数据库审计,需要先完成上述的ES服务的部署。
3.2.1 ES可视化部署
1、点击Skylab顶栏中的 自动部署 进入自动部署模块
2、点击自动部署模块侧栏中的 Elasticsearch 大数据组件
3、点击右侧页面中的 新建集群 按钮
4、选择集群节点
5、修改配置
6、部署确认
7、查看并管理集群
3.3 打开审计功能
审计功能的总开关通过参数 audit_enabled 控制,目前不支持动态加载,设置之后需要重启数据库主节点。
oushudb config -c audit_enabled -v on
oushudb restart allmains
3.4 审计日志内容
3.4.1 日志内支持的字段
3.4.2 审计日志筛选
当前审计中心支持根据时间条件过滤,也可以根据操作结果、操作烈性过滤日志。或通过高级搜索功能进行模糊与精确的搜索。高级检索支持的功能如下
4、查询结果展示
查询信息如下: