帮助文档 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
帮助文档 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 日志服务
  4. 操作指南
  5. 数据采集
  6. 云产品日志采集
  7. DMS操作日志

DMS操作日志

  • 云产品日志采集
  • 发布于 2025-04-22
  • 0 次阅读
文档编辑
文档编辑

阿里云日志服务联合数据管理DMS推出操作日志导出功能,将日志服务的部分功能融合到DMS操作日志中,实现日志实时查询、可视化分析、告警等功能。本文介绍DMS操作日志导出功能相关的资源说明、应用场景、费用说明、使用限制以及将DMS操作日志导入到日志服务进行查询分析等操作。

支持的日志

数据管理DMS支持将操作日志投递到日志服务,进行查询与分析。操作日志指用户在DMS发起所有操作的流水账式日志,日志包含用户的相关信息、使用的功能模块名称、执行操作的时间、执行的操作类型及SQL语句等信息。更多信息,请参见操作审计。

资源说明

  • 自定义日志服务Project、Logstore

    重要
    • 请勿删除DMS操作日志相关的日志服务Project和Logstore,否则将无法正常采集日志到日志服务。

    • 创建自定义Logstore时,将根据计费模式不同产生不同的计费项,具体信息,可参见计费项。

  • 专属仪表盘

    无专属仪表盘。

费用说明

  • 目前,数据管理服务DMS不针对操作日志导出功能收取费用。

  • 当涉及的Logstore的计费模式为按使用功能计费时,日志服务采集到日志后,将根据存储空间、读取流量、请求数量、数据加工、数据投递等进行收费。更多信息,请参见按使用功能计费模式计费项。

  • 当涉及的Logstore的计费模式为按写入数据量计费时,日志服务采集到日志后,日志服务将根据原始写入数据量等进行收费。更多信息,请参见按写入数据量计费模式计费项。

开通操作日志功能

前提条件

  • 已开通日志服务。更多信息,请参见开通日志服务。

  • 已创建日志服务项目(Project)和日志库(Logstore)。具体操作,请参见创建Project和创建Logstore。

  • 目标SLS的Logstore必须为空,且必须开启全文索引。开启全文索引的具体操作,请参见手动创建字段索引。

操作步骤

步骤一:录入Project至DMS

  1. 以管理员角色,登录数据管理DMS 5.0。

  2. 在控制台首页的数据库实例区域,单击image..png。

    说明

    若您使用的是极简模式的控制台,请单击控制台左侧的数据库实例,在数据库实例区域,单击image..png。

  3. 在新增实例页面,录入SLS信息。

    类别

    配置项

    说明

    数据来源

    -

    选择阿里云。

    基本信息

    数据库类型

    选择SLS。

    实例地区

    选择SLS所在地域。

    录入方式

    默认选择连接串地址。

    连接串地址

    在选择实例地区后,会自动生成一个连接串地址。

    项目名

    输入在SLS创建的Project名称。

    AccessKey ID

    输入您的阿里云账号AccessKey ID。该AccessKey ID用于Project录入至DMS时进行身份验证。

    说明

    获取AccessKey ID的方法,请参见创建AccessKey。

    AccessKey Secret

    输入与AccessKey ID对应的AccessKey Secret。

    说明

    获取AccessKey Secret的方法,请参见创建AccessKey。

    增值功能包

    该数据来源暂不支持添加功能包,默认具有自由操作模式能力。

    高级信息

    环境类型

    选择环境类型。环境类型包含开发、测试、生产、预发、SIT、UAT、压测和STAG环境。更多信息,请参见实例环境类型。

    实例名称

    自定义SLS在DMS显示的名称。

    说明

    您可以通过编辑实例来维护实例名称。具体操作,请参见编辑实例。

    实例DBA

    选择一个实例DBA,该DBA可用于后续权限申请等流程。

    查询超时时间(s)

    设定的安全策略,控制执行查询语句的时间,以保护数据库安全。

    导出超时时间(s)

    设定的安全策略,控制执行导出语句的时间,以保护数据库安全。

    说明
    • 基本信息配置完成后,单击页面下方的测试连接,等待测试通过。

    • 若出现“getProject命令的执行结果为空”的错误提示,请确认录入的Project是否由当前登录DMS的阿里云账号创建。

  4. 单击提交。

步骤二:在DMS创建操作日志导出任务

  1. 登录数据管理DMS 5.0。
  2. 在顶部菜单栏中,选择安全与规范 > 操作审计。

    说明

    若您使用的是极简模式的控制台,请单击控制台左上角的2023-01-28_15-57-17图标,选择全部功能 > 安全与规范 > 操作审计。

  3. 选择导出日志页签,单击右上角新建任务。

  4. 在新建导出任务对话框中,配置如下信息。

    配置项

    是否必填

    说明

    任务名称

    是

    导出任务名称,便于后续查找。

    目标SLS

    是

    日志服务的资源管理单元Project。

    SLS Logstore

    是

    该Logstore将会保存导出的DMS操作日志。您可单击该参数的输入框,并选择目标Logstore。

    说明

    若下拉框中未出现目标Logstore,请单击同步字典,再单击确认,DMS可自动采集Logstore中的元数据信息。

    功能模块

    是

    选择需要导出DMS哪些功能模块的日志(与操作日志中的模块对应),包含实例管理、用户管理、权限、在SQL窗口进行数据查询等功能。默认选择导出全部功能的日志。

    调度方式

    是

    选择本次任务的调度方式。

    • 单次:指成功创建导出任务后,仅导出一次。

    • 周期:可选择按日、周或月循环多次导出日志至Logstore。周期调度任务第一次会导出从日志开始时间到第一次调度开始时间范围内,您在DMS生成的所有操作日志,后续仅导出增量的日志。具体配置,请参见周期调度。

    日志时间范围

    否

    说明

    调度方式选择单次时会出现此配置项。

    导出某时间范围内的日志。不填写该配置项则默认导出三年内的日志。

    日志开始时间

    否

    说明
    • 调度方式选择周期时会出现此配置项。

    • 周期任务没有截止时间。

    DMS日志记录的开始时间,不填写则默认为创建导出任务时间对应三年前的时间。

  5. 单击确认,会创建一个导出日志任务,同时,系统还会在您的Logstore中创建一些用于后续查询分析数据的索引字段,例如dbId、dbName、dbUser等。

    • 对于单次任务,仅导出一次日志,当任务的状态为运行成功时,表示日志导出成功。

      说明

      因Logstore索引延迟生效,所以单次调度任务会在创建成功后的90秒左右开始执行。

    • 对于周期任务,会多次导出日志,且导出前和导出后的任务状态均为待调度。您可通过查看任务日志,判断某次任务是否执行成功。

    您还可以在目标任务行操作列下进行如下操作。

    • 查询:单击查询,系统自动跳转至SQL Console页面,单击查询,在页面下方的执行结果区域可查看导出至Logstore的日志。

    • 任务日志:单击任务日志,查看任务开始、结束时间、投递日志数量、任务状态等信息。

    • 暂停:单击暂停,在弹出的提示对话框中,单击确认,周期任务会被暂停执行。

    • 重启:单击重启,在弹出的提示对话框中,单击确认,可重新启动已被暂停执行的周期任务。

      说明
      • 单次任务不支持重启操作,其他操作均支持。

      • 周期任务支持查询、暂停等全部操作。

创建导出任务的更多信息,请参见导出DMS操作日志到阿里云日志服务。

步骤三:在SLS控制台查询、分析导出的DMS操作日志

  1. 登录日志服务控制台。

  2. 在Project列表区域,单击目标Project。

    image

  3. 在日志存储 > 日志库页签中,单击目标Logstore。

    image

  4. 在输入框中输入查询、分析语句。

    查询和分析语句由查询语句和分析语句构成,格式为查询语句|分析语句。查询分析语句语法请参见查询语法与功能、SQL分析语法。

    当前仅支持在SLS查询、分析如下信息:

    说明

    以查询dmstest Logstore举例。

    • 登录数据库失败次数最多的用户。

      __topic__ : DMS_LOG_DELIVERY AND subModule : LOGIN | SELECT concat(cast(operUserId as varchar), '(', operUserName, ')') user, COUNT(*) cnt FROM dmstest WHERE state = '0' GROUP BY operUserId, operUserName ORDER BY cnt DESC LIMIT 10;

    • 实例来源IP异常的用户。以127.0.0.1举例。

      说明

      实例来源IP指录入实例至DMS时您的本地IP地址,该地址用于标识实例的来源。

      __topic__ : DMS_LOG_DELIVERY | SELECT concat(cast(operUserId as varchar), '(', operUserName, ')') user, COUNT(*) cnt FROM dmstest WHERE state = '0' and requestIp in ('127.0.0.1') GROUP BY operUserId, operUserName ORDER BY cnt DESC LIMIT 10;

    • 访问DMS次数最多的用户。

      __topic__ : DMS_LOG_DELIVERY| SELECT concat(cast(operUserId as varchar), '(', operUserName, ')') user, COUNT(*) cnt FROM dmstest GROUP BY operUserId, operUserName ORDER BY cnt DESC LIMIT 10;

    • 同一天访问、操作多个数据库的用户。

      __topic__: DMS_LOG_DELIVERY | SELECT concat(cast(operUserId as varchar), '(', operUserName, ')') user, date_trunc('day', gmtCreate) time, dbId, COUNT(*) qpd from dmstest GROUP BY time, operUserId, operUserName, dbId ORDER BY time, qpd DESC;

    • 在DMS执行数据库操作失败的用户。

      __topic__ : DMS_LOG_DELIVERY AND moudleName : SQL_CONSOLE | SELECT concat(cast(operUserId as varchar), '(', operUserName, ')') user, actionDesc as sqlStatement, subModule as sqlType, remark as failReason FROM dmstest WHERE state = '-1' order by id;

    • 下载敏感数据次数最多的用户。

      __topic__ : DMS_LOG_DELIVERY AND moudleName : DATA_EXPORT | SELECT concat(cast(operUserId as varchar), '(', operUserName, ')') user, COUNT(*) cnt FROM dmstest WHERE hasSensitiveData = 'true' GROUP BY operUserId, operUserName ORDER BY cnt DESC LIMIT 10;
    • 对敏感数据执行批量删除、更新等SQL语句。

      __topic__ : DMS_LOG_DELIVERY | SELECT subModule, COUNT(*) cnt, COUNT(affectRows) affectRow FROM dmstest WHERE subModule != '' GROUP BY subModule ORDER BY cnt DESC;

    • 导出数据时,是否开启数据水印功能。

      __topic__ : DMS_LOG_DELIVERY AND moudleName : DATA_EXPORT | SELECT targetId as orderId, concat(cast(operUserId as varchar), '(', operUserName, ')') user, COUNT(*) cnt FROM dmstest where actionDesc like '%开启数据水印: false' GROUP BY targetId, operUserId, operUserName ORDER BY cnt DESC LIMIT 10;
      说明
      • 查询开启数据水印的语句为:'%开启数据水印: true'。

      • 查询未开启数据水印的语句为:'%开启数据水印: false'。

    • 在SQL Console页面的执行结果区域下载SQL结果集的用户。

      __topic__ : DMS_LOG_DELIVERY AND moudleName : SQL_CONSOLE_EXPORT | SELECT concat(cast(operUserId as varchar), '(', operUserName, ')') user, COUNT(*) cnt FROM dmstest GROUP BY operUserId, operUserName ORDER BY cnt DESC LIMIT 10;

查询和分析的更多信息,请参见步骤一:配置索引。

后续步骤

导出DMS操作日志到日志服务后,您可以在日志服务中执行查询分析、下载、创建告警等操作。具体操作,请参见云产品日志通用操作。

相关文章

云产品日志通用操作 2025-04-22 11:03

您在各个云产品控制台开通日志功能后,即可执行日志服务相关操作。 常用操作 采集到云产品日志后,您可以执行如下操作。

ACK One日志 2025-04-22 11:03

分布式云容器平台ACK One联合日志服务推出日志功能,支持将主控实例控制平面组件日志和审计日志、GitOps控制面日志与审计日志推送到日志服务进行查询分析。本文介绍日志功能相关的资产、费用等信息。 资产详情 专属Project和Logstor

开启主控实例控制平面组件日志及审计日志功能 2025-04-22 11:03

本文介绍如何在分布式云容器平台控制台中开启主控实例控制平面组件日志及审计日志功能,将相关日志投递到日志服务中。 前提条件 已创建ACK集群。具体操作,请参见创建集群。 操作步骤

开启GitOps控制面日志与审计日志功能 2025-04-22 11:03

本文介绍如何通过CLI开启GitOps控制面日志与审计日志功能,将相关日志投递到日志服务中。 前提条件 已在ACK One主控实例中开启GitOps。具体操作,请参见在ACK One主控实例中开启GitOps。 已开启ACK On

ACK托管集群Pro版控制平面组件日志 2025-04-22 11:03

阿里云容器服务Kubernetes版联合日志服务推出组件日志功能,支持将ACK Pro版集群控制平面组件日志投递到日志服务进行查询分析。本文介绍ACK Pro版集群控制平面组件日志相关的资产、费用,以及如何在容器服务ACK控制台中开启ACK Pro版集群控制平面组件日志功能,将相关日志投递到日志服务

ACK Serverless集群Pro版控制平面组件日志 2025-04-22 11:03

阿里云容器服务Kubernetes版联合日志服务推出组件日志功能,支持将ACK Serverless集群Pro版控制平面组件日志投递到日志服务进行查询分析。本文介绍ACK Serverless集群Pro版控制平面组件日志相关的资产、费用,以及如何在容器服务ACK控制台中开启

目录
Copyright © 2025 your company All Rights Reserved. Powered by 博智数字服务平台.
闽ICP备08105208号-1