Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs 菜单
Docs 主页
/ /
Atlas 架构中心
/ /

Atlas Logging 指南

要查看Atlas平台活动,请使用日志。

您可以使用Atlas CLI、 Atlas Administration API或Atlas 用户界面进行以下审核活动:

  • 查看和下载Atlas 审核日志,以追踪具有多个用户的部署的系统事件操作。 Atlas管理员可以配置自定义审核过滤,以选择要Atlas 审核的操作、数据库用户、 Atlas角色和 LDAP群组。

  • 查看和下载MongoDB日志以追踪部署的日志事件,包括传入连接、运行的命令以及遇到的问题。通常,日志消息可用于诊断问题、监控部署和调优性能。

  • 查看Project Activity FeedOrganization Activity Feed 中的项目和组织事件。这些操作源列出了组织或项目级别的所有事件,包括与Atlas访问权限、警报配置和监控、计费等相关的更改。

  • 在访问权限日志中查看用户对集群进行的数据库身份验证尝试(即Atlas用户用户界面中的Database access history )。 Atlas会记录成功和不成功的身份验证尝试,包括每次尝试的时间戳以及哪个用户尝试进行身份验证。

要与内置以外的工具集成,我们建议您使用以下编程工具检索日志,并将JSON格式的输出提供给外部工具:

  • 要将日志持续推送到 AWS S3 存储桶,请使用 Atlas Administration API 终结点来进行基于推送的日志导出。

  • 要检索部署日志和项目事件列表,请使用Atlas Administration API端点进行监控和日志以及项目和组织事件。

  • 要检索部署日志,请使用Atlas CLI中的 atlas 部署 logs 命令。

以下建议应用于所有 部署范例。

要执行全面Atlas 审核,您可以结合使用Atlas 审核日志、 MongoDB日志消息以及项目和组织操作日志。

默认下,Atlas 审核日志消息以MongoDB设计的格式(称为Mongo 模式)返回。遵循mongo 模式的审核日志消息始终包含以下信息:

  • 操作类型 (atype)

  • 时间戳

  • 客户端连接ID (UUID)

  • 客户端IP解决和端口号

  • 传入连接IP解决和端口号

  • 用户名

  • 用户身份验证数据库

  • 用户角色

  • 用户角色数据库

  • param 包含事件具体详情的文档

  • 结果值或错误代码

有关Atlas 审核动作类型及其关联的 详细信息和param 值的完整列表,请参阅Mongo模式审核消息。result

提示

以下示例展示了如何使用 Atlas 自动化工具来检索和下载日志并配置审核。

除以下示例外,请参阅博文使用 HashiCorp Terraform 基于 Atlas 推送的日志导出简化 Amazon S3 的日志管理。

您可以检索和下载日志。您还可以检索警报。

  • 检索日志允许您获取日志,以便实时查看和访问当前日志文件。

  • 通过下载日志,您可以从MongoDB Atlas创建日志存档以供日后分析或存储。

检索日志以实时监控和检查集群的活动,并解决当前日志中的问题。

集群中的每个mongodmongos 实例都输出自己的MongoDB日志和Atlas 审核日志消息,其内容可能与其他实例不同。您可以在Atlas CLI中使用 atlas 部署 logs 命令查看这些日志消息。

要检索集群中 实例的Atlasmongod 审核日志条目,请提供mongod 主机名并指定mongodb-audit-log.gz 作为Atlas 审核日志文件的名称:

atlas deployments logs --output json --type atlas --hostname cluster0-shard-00-00.a1b2c.mongodb.net --name mongodb-audit-log.gz

要检索分片集群中mongos 实例的Atlas 审核日志条目,请提供mongos 主机名并指定mongos-audit-log.gz 作为Atlas 审核日志文件的名称:

atlas deployments logs --output json --type atlas --hostname cluster0-shard-00-00.a1b2c.mongodb.net --name mongos-audit-log.gz

要检索MongoDB日志消息,请提供 mongodmongos 实例的主机名,并将日志文件的名称分别指定为mongodb.gzmongos.gz

atlas deployments logs --output json --type atlas --hostname cluster0-shard-00-00.a1b2c.mongodb.net --name mongodb.gz

您还可以使用 atlas accessLogs list 命令查看节点或集群的访问权限日志。访问权限日志是针对指定节点或集群的所有身份验证请求的JSON格式列表。

要检索访问权限日志,运行atlas accessLogs list 命令并指定目标节点或集群的主机名或集群名称:

atlas accessLogs list --output json --clusterName Cluster0

下载日志以关注历史日志并对其进行审核或性能分析,或将其存档。

集群中的每个mongodmongos 实例都有自己的MongoDB日志和Atlas 审核日志,其内容可能与其他实例不同。尽管从应用程序的角度来看,mongod mongos或 实例的行为与任何其他MongoDB实例相同,但它们的日志包含特定于它们在MongoDB中的角色的信息。

  • mongod的日志包含MongoDB的数据请求、数据访问信息和背景管理操作。

  • mongos的日志包含有关将查询和写入操作路由到分片集群中的分片的信息。

您可以使用 atlas logs 下载 Atlas CLI命令将每个日志下载为压缩文件。

要下载集群中 实例的Atlasmongod 审核日志,请提供 主机名和Atlasmongod 审核日志文件名mongodb-auditlog.gz 作为参数。此处仅使用此文件的名称作为示例,您可以使用其他名称。

atlas logs download cluster0-shard-00-00.a1b2c.mongodb.net mongodb-audit-log.gz

要下载分片集群部署中 实例的Atlasmongos mongosmongos-auditlog.gz审核日志,请提供 主机名和Atlas 审核日志文件名 作为参数。此处仅使用此文件的名称作为示例,您可以使用其他名称。

atlas logs download cluster0-shard-00-00.a1b2c.mongodb.net mongos-audit-log.gz

要下载 或 mongodmongos实例的MongoDB日志,请分别提供该实例的主机名和日志文件名mongodb.gzmongos.gz 作为参数:

atlas logs download cluster0-shard-00-00.a1b2c.mongodb.net mongodb.gz

您可以使用以下Atlas CLI命令返回项目或组织的事件触发的警报。 Atlas默认提供Replica set has no primaryUser joined the project 等警报。这些事件记录了项目或组织内的重大活动和变更,包括重要的数据库、计费或安全活动或状态变更。

要为您的项目和组织自定义哪些事件触发警报,请参阅配置警报设置。

您可以使用以下Atlas CLI命令从 Project Activity FeedOrganization Activity Feed 返回项目或组织事件。

要返回组织的所有事件,请使用 atlas events organizations list 命令并指定您的组织ID 。以下命令返回ID为 的组织的JSON格式的事件列表:5dd5a6b6f10fab1d71a58495

atlas events organizations list --orgId 5dd5a6b6f10fab1d71a58495 --output json

要返回项目的所有事件,请使用 atlas events projects list 命令并指定项目ID 。以下命令返回ID为 的项目的JSON格式的事件列表:64ac57bfe9810c0263e9d655

atlas events organizations list --orgId 5dd5a6b6f10fab1d71a58495 --output json

要下载整个集群的查询日志,请获取所需权限,在Atlas 用户界面中选择集群,单击 Online Archive,然后运行:

<cluster-name>_cluster_archive_<start-date>_<end-date>_queries.log.gz

您无法使用 Terraform检索日志。请改用以下Atlas Administration API端点:

  • 使用访问跟踪管理API返回数据库所有身份验证尝试的访问权限日志,由集群名称或主机名标识。

  • 使用监控和日志 API 来检索包含指定主机日志消息的压缩日志文件。

后退

审核

在此页面上