导出审计日志

更新时间:2025-03-24 05:40:21

本文档描述调用API导出审计日志的功能。日志审计属于增值功能,网盘与相册服务开发版中默认未开启,使用前请先联系我们。网盘与相册服务开发版,对增值服务会进行单独收费,请见增值计费项

功能介绍

日志审计,用于管理员查阅和审计用户的历史操作。功能点:

  • 超级管理员/网盘管理员的日志审计功能针对企业全员范围,团队管理员仅限负责团队的日志审计。

  • 日志审计包含团队所有成员在各个端(App、Web、PC、WAP)的相关操作信息,包括操作者、操作项、操作详情、客户端等信息。

  • 日志可以通过PDS Web/PC客户端的管理员界面、或者调用API导出为CSV文件,下载并保存到本地。

  • 日志保存180天。

API 参数说明

调用AuditLogExport - 导出审计日志,创建一个日志导出任务,API返回异步任务ID,用于查询任务进度和状态。异步任务将查询范围的日志记录生成为一个CSV文件,任务完成后返回CSV文件的下载URL。

  • query:指定查询范围,支持根据空间(drive_id)、操作者(actor_id)、操作时间(acted_at)、操作类型(action_type)四种筛选方式来查询和导出日志。

  • file_name:指定导出的文件名,默认为log.csv。当使用浏览器直接访问URL下载CSV文件时,该参数的值是下载到本地的文件名。

query规则

  1. 支持的数据类型:

    1. 基本类型:long、string、bool、double

    2. 复合类型:array,date(时间类型,用双引号或单引号括起来,与字符串类型一致。格式"2006-01-02T00:00:00",只支持零时区)

  2. 基本类型支持的搜索:

    1. long: =, <, >, <=, >=

    2. string: = (精确搜索)

    3. bool: =

    4. double: =, <, >, <=, >=

  3. 复合类型支持的搜索:

    1. array: in (多条件的=)

    2. b. date: =, <, >, <=, >=

  4. 逻辑操作支持:not、and、or

  5. 支持括号,优先级为:括号 > not > and > or

query举例

1、查询所有日志

query为空。

2、根据操作时间查询

acted_at > "2025-02-14T00:00:00" and acted_at < "2025-03-14T00:00:00"

3、查询特定空间的日志

通过ListDrive - 列举空间SearchDrive - 搜索空间ListMyDrives - 列举我的空间,查询到空间(drive)ID。查询drive ID1、2、3drive相关日志:

drive_id = "1" or drive_id = "2" or drive_id = "3"

数组方式查询:

drive_id in ["1", "2", "3"]

4、根据操作者查询

通过ListUser - 列举用户SearchUser - 搜索用户,查询到用户(user)ID;再以 actor_id = user ID来查询。

(1)查询IDuser1_id的单个用户日志

actor_id = "user1_id"

(2)查询IDuser1_iduser2_id的多个用户日志

actor_id = "user1_id" or actor_id = "user2_id"

5、按照操作类型查询

(1)查询创建分享、取消分享日志

action_type="create_sl" or action_type="cancel_sl"

(2)查询上传、创建分享日志

action_type="upload_file" or action_type="create_sl"

6、组合查询

查询特定时间范围内的分享、取消分享日志

(action_type="create_sl" or action_type="cancel_sl") and acted_at > "2025-02-14T00:00:00" and acted_at < "2025-03-14T00:00:00"

日志分类

日志审计的操作类型如下:

场景

操作类型

action_type的值

文件基础操作

上传

upload_file

下载

download_file

预览

preview_file

在线编辑

online_edit_file

移动

move_file

复制

copy_file

重命名

rename_file

收藏

starred_file

取消收藏

unstarred_file

解压预览

decompress_preview_file

解压文件

decompress_file

新建文件夹

create_folder

新建文件

create_file

添加备注

add_remark

修改备注

edit_remark

删除备注

delete_remark

删除

trash_file

从回收站恢复

restore_file

彻底删除

delete_file

清空回收站

clear_recycle_bin

永久保留版本

keep_revision_forever

取消永久保留版本

cancel_keep_revision_forever

添加版本标记

add_revision_remark

修改版本标记

edit_revision_remark

删除版本标记

delete_revision_remark

还原历史版本

restore_revision

删除历史版本

delete_revision

文件分享

创建分享

create_sl

修改分享

update_sl

取消分享

cancel_sl

分享链接预览文件

preview_sl_file

分享链接保存文件

save_sl_file

分享链接下载文件

download_sl_file

分享链接上传文件

upload_sl_file

文件共享

创建共享

create_share

取消共享

cancel_share

账号

登录成功

login

团队和用户管理

新建用户

create_user

禁用用户

disable_user

启用用户

enable_user

编辑用户

edit_user

切换用户角色

change_user_role

绑定用户认证方式

link

解绑用户认证方式

unlink

换绑用户认证方式

change_link

删除用户

delete_user

新建团队

create_group

编辑团队

edit_group

删除团队

delete_group

添加团队成员

add_group_membership

删除团队成员

delete_group_membership

云盘管理

新建用户云盘

create_user_drive

禁用用户云盘

disable_user_drive

启用用户云盘

enable_user_drive

编辑用户云盘

edit_user_drive

删除用户云盘

delete_user_drive

移交用户云盘

handover_user_drive

新建团队云盘

create_group_drive

禁用团队云盘

disable_group_drive

启用团队云盘

enable_group_drive

编辑团队云盘

edit_group_drive

删除团队云盘

delete_group_drive

API 调用流程

1、调用AuditLogExport - 导出审计日志,对query指定的查询范围内日志,创建导出任务,API返回导出任务的ID(async_task_id)。

请求示例:

{
    "query":"(action_type = 'upload_file') and acted_at > '2025-03-10T16:00:00' and acted_at < '2025-03-17T15:59:59'",
    "language":"zh_CN"
}

响应示例:

{
    "async_task_id":"f58c59a800d7b2cb6e1c4f7f0485b41****"
}

2、调用GetAsyncTask - 获取异步任务信息,查询日志导出任务的进度和状态。

(1)通过返回参数state判断任务状态:

  • Failed(失败)

  • Running(运行中)

  • PartialSucceed(部分成功)

  • Succeed(成功)

(2)任务执行过程中,通过返回参数consumed_process(异步任务已处理总量)、total_process(异步任务需处理总量),获取处理进度。

注意:任务初始化阶段,如果还未统计出需处理总量,total_process可能为0。

(3)任务执行成功,通过返回参数url,获取到导出文件的下载地址。地址有效期为10分钟,请及时下载。

请求示例:

{
    "async_task_id":"f58c59a800d7b2cb6e1c4f7f0485b41****"
}

任务执行中,响应示例:

{
    "async_task_id": "f58c59a800d7b2cb6e1c4f7f0485b41****",
    "state": "Running",
    "message": "task is running",
    "total_process": 4,
    "consumed_process": 0
}

任务处理成功,响应示例:

{
    "async_task_id": "f58c59a800d7b2cb6e1c4f7f0485b41****",
    "state": "Succeed",
    "total_process": 4,
    "consumed_process": 4,
    "url": "https://****"
}

使用限制

  • 单次导出审计日志最多支持100万条日志记录。如果超过100万条,API会报错,信息为:HTTP code 400, errorCode: InvalidResourceUnsupported.ExportAuditLogMaxCount。遇到该错误,需要缩短查询时间区间或者添加过滤条件,重新调用导出审计日志API。

  • 本页导读
  • 功能介绍
  • API 参数说明
  • query规则
  • query举例
  • 日志分类
  • API 调用流程
  • 使用限制