本指南介绍了 Cloud Logging 代理,这是一种基于在虚拟机 (VM) 实例上运行的 fluentd 的应用。
在默认配置中,Logging 代理会将常见第三方应用和系统软件中的日志流式传输到 Logging;请参阅默认日志列表。您可以通过配置来让该代理流式传输更多日志。如需详细了解代理配置和操作,请转至配置 Logging 代理。
最好在所有虚拟机实例上都运行 Logging 代理。该代理可在 Linux 和 Windows 上运行。如需安装 Logging 代理,请转至安装代理。
如果您运行的专业化日志记录工作负载需要比标准 Cloud Logging 代理更高的吞吐量和/或更高的资源效率,请考虑使用 Ops Agent。
支持的操作系统
您可以使用以下操作系统,在兼容的虚拟机 (VM) 实例上运行 Logging 代理:
- CentOS 6、7 和 8
- Debian 9“Stretch”和 10“Buster”
- Red Hat Enterprise Linux 6、7 和 8
- Ubuntu LTS 16.04 (Xenial Xerus)、LTS 18.04 (Bionic Beaver)、19.10 (Eoan Ermine) 和 LTS 20.04 (Focal Fossa)
- Ubuntu Minimal LTS 16.04 (Xenial Xerus)、LTS 18.04 (Bionic Beaver)、19.10 (Eoan Ermine) 和 LTS 20.04 (Focal Fossa)
- SUSE Linux Enterprise Server 12 SP3、12 SP2 for SAP、12 SP3 for SAP、15、15 for SAP 和 15 SP1 for SAP
- Windows Server 2008 R2、2012 R2、2016 和 2019
- Windows Server Core 2008 R2、2012 R2、2016 和 2019
- Windows Server Core 1809、1903、1909 版
- Amazon Linux AMI(不含 Amazon Linux 2.0 AMI)
受支持的环境
Logging 代理与以下环境兼容:
Compute Engine 实例。Logging 代理会将日志发送到与每个虚拟机实例关联的项目。
对于没有外部 IP 地址的实例,您必须启用专用 Google 访问通道,以允许 Logging 代理发送日志。
Amazon Web Services Elastic Compute Cloud (AWS EC2) 实例。Logging 代理会将日志发送到将您的 AWS 帐号与 Google Cloud 服务关联的 AWS 连接器项目。
为使 Logging 代理正常运行,运行它的 Amazon EC2 实例必须能够与 Google Cloud APIs 通信,尤其是 Logging API。这需要外部 IP 地址或 VPC 互联网网关。
这些虚拟机实例运行 Logging 代理时,至少需要 250 MiB 的常驻 (RSS) 内存,但建议留出 1 GiB 可用内存。举例来说,按每秒处理 100 个 1 KB 大小的日志条目的速率计算,使用默认配置的 Logging 代理将占用 5% 的 CPU(单核)和 150 MiB 的内存。
以下虚拟机实例使用自己的软件支持 Logging,因此不支持在其上手动安装 Logging 代理:
App Engine 标准环境实例。App Engine 内置了对 Logging 的支持。如需了解详情,请转至编写应用日志。
App Engine 柔性环境实例。除 App Engine 标准环境中所含的那些日志外,在 App Engine 柔性环境中运行的应用还可以写入其他日志。如需了解详情,请转至编写应用日志。
Google Kubernetes Engine 节点实例。您可以为新的或现有的容器集群启用 Cloud Operations for GKE,这是一种集成的监控和日志记录解决方案。
对于在 VMware 上的 Anthos 集群中运行的实例,代理会收集系统日志,但不会收集应用日志。
Cloud Run 容器实例。Cloud Run 内置了对 Logging 的支持。如需了解详情,请转到记录和查看日志。
Cloud Functions HTTP 函数和后台函数。Cloud Functions 内置了对 Logging 的支持。如需了解详情,请转到写入、查看和响应日志。
支持本地和混合云
Google Cloud 与 Blue Medora 合作,以一种一致且可预测的方式为本地和混合云平台提供日志记录服务。通过使用 Blue Medora,您可以收集自己的数据并将其发送到 Logging 进行分析。Blue Medora 的 Bindplane 与 Cloud Logging 集成,可从您的基础架构中获取数据,并且包含在您的项目中,不会产生额外费用。
如需详细了解 Blue Medora,请转至 Blue Medora 简介。
代理访问要求
运行代理需要访问以下 DNS 名称:
OAuth2 令牌服务器:
oauth2.googleapis.com
旧版代理可能需要访问
www.googleapis.com
(完整网址:https://www.googleapis.com/oauth2/v3/token
)。如果您使用的是旧版代理,建议您升级代理到最新版本。
Logging API:
logging.googleapis.com
安装代理需要访问以下 DNS 名称:
(Linux) Google Cloud package repository:
packages.cloud.google.com
(Windows) Google 下载服务器:
dl.google.com
Logging 代理源代码
除非您想了解相关源代码或有其他特殊需求,否则无需关注本部分中的信息。您可以通过安装说明中描述的脚本来安装 Logging 代理。
Logging 代理 google-fluentd
是 fluentd 日志数据收集器的修订版。google-fluentd
分布在两个独立的程序包中。源代码可从相关的 GitHub 代码库中获取:
- 名为
google-fluentd
的 GitHub 代码库,其中包含核心fluentd
程序、自定义封装脚本以及适用于 Cloud Logging API 的输出插件。- 输出插件作为 Ruby gem 封装,并包含在
google-fluentd
程序包中。它也可以通过 fluent-plugin-google-cloud 的 Ruby gem 托管服务单独获取。 - 与 Windows 安装程序相关的内容位于 windows-installer 文件夹中。
- 输出插件作为 Ruby gem 封装,并包含在
- 名为
google-fluentd-catch-all-config
的 GitHub 代码库,其中包含 Logging 代理用于从各种第三方软件包中提取日志的配置文件。
Logging 代理版本说明
如需查看
google-fluentd
Linux 软件包的版本说明,请访问google-fluentd/releases
,其中的版本标志采用[Major].[Minor].[Patch]
语义化版本格式。您可以在同一位置找到 Windows 安装程序的版本说明:
google-fluentd/releases
。 但是,其版本标志带有Windows
前缀。您可以在
fluent-plugin-google-cloud/releases
中找到独立的 gemfluent-plugin-google-cloud
的版本说明,其中的版本标志采用[Major].[Minor].[Patch]
语义化版本格式。
弃用政策
Logging 代理需遵守Google Cloud 的运维套件代理弃用政策。