最近更新时间:2023.11.09 13:55:59
首次发布时间:2022.05.12 11:20:02
本文以单行全文模式为例,介绍如何通过日志服务控制台采集火山引擎云服务器 ECS 日志。
LogCollector 是日志服务的采集客户端,通过 LogCollector 可实现快速无侵入式地把日志数据采集到日志服务中,具体安装步骤如下。
例如日志服务所在地域为华北2(北京),下载和安装路径为 /usr/local/
,执行以下命令下载 LogCollector 安装包并解压缩。
说明
wget https://logcollector-cn-beijing.tos-cn-beijing.volces.com/logcollector.sh && bash ./logcollector.sh cn-beijing && cd /usr/local/filebeat-7.12.0
在安装路径下打开目录 filebeat-7.12.0/tools
,执行以下命令安装 LogCollector。
cd /usr/local/filebeat-7.12.0/tools && ./filebeat.sh install
在安装路径下的目录 filebeat-7.12.0/tools
中,以 root 权限执行 LogCollector 初始化命令。
初始化命令如下:
./filebeat.sh init --endpoint https://tls-cn-beijing.ivolces.com --secret_id AKIDc9YlmrBcFk4C8sbmXQ8i65********** --secret_key LUSE4nPK1d4tX5SHyXv6tZ********** --region cn-beijing
其中,endpoint
、secret_id
、secret_key
和 region
为必选参数,详细说明如下。
参数 | 是否必选 | 示例 | 说明 |
---|---|---|---|
endpoint | 必选 |
| 日志服务连接域名,即服务地址。 |
secret_id | 必选 |
| 火山引擎主账号或子账号的 Access Key ID。 |
secret_key | 必选 |
| 火山引擎主账号或子账号的 Secret Access Key。 |
region | 必选 | cn-beijing | 日志项目所在的地域(Region)。 |
compress_type | 可选 | none | 指定 LogCollector 通过哪种方式来压缩日志。
|
ip | 可选 | 10.1.1.* | 机器的 IP 标识。若不填写,LogCollector 会自动获取本机的 IP 地址,您可以在安装路径下 |
label | 可选 |
| 机器的自定义标识。 |
执行以下命令启动 LogCollector。
systemctl start filebeatd.service
登录日志服务控制台。
在左侧目录中选择日志服务 > 机器组管理。
在机器组管理页面单击创建机器组。
填写机器组的基本信息,并单击确定。
参数 | 说明 |
---|---|
机器组名称 | 机器组的名称。需要满足以下要求。
|
机器组类型 | 机器组的类型,此处以IP地址为例。 |
机器IP | 服务器 IP 地址。 说明
|
LogCollector服务日志 | 是否开启 LogCollector 服务日志功能。开启后,LogCollector 客户端在运行过程中会实时记录运行状态和采集进度等信息。 |
LogCollector自动升级 | 机器组服务器中安装的 LogCollector 是否开启自动升级功能。
说明 仅 LogCollector V1.0.8 及后续版本支持自动升级。 |
自动升级时间 | LogCollector 的自动升级时间。 说明
|
所属项目 | 在下拉列表里选择当前创建的机器组所属的 IAM 项目。 |
说明
在机器组中添加服务器后,服务器心跳状态会短暂显示为异常,直到 LogCollector 成功向日志服务上报心跳状态。如果服务器心跳状态异常持续 1 分钟以上,建议参考机器组心跳问题排查逐步排查处理。
本文档以单行全文模式为例,介绍控制台创建采集配置的操作步骤。
填写规则名称。
规则名称即 LogCollector 采集配置的名称。需要满足以下要求:
选择是否启用容器日志采集。
采集宿主机日志及 Sidecar 方式采集容器日志时,此配置应维持默认的关闭状态。
填写采集路径。
采集路径即日志所在的目录和文件名,LogCollector 会按照采集路径中的目录部分匹配符合规则的目录,监听这些目录下符合规则的日志文件。最多设置 10 个不同的采集路径。
采集路径可以指定完整的目录和文件名,也可以通过通配符模糊匹配。
说明
**
时,表示多层目录匹配,仅在此时,日志服务才会监听指定目录下深至8级的子目录。常见的采集路径的配置方式及示例如下。
配置方式 | 日志路径示例 | 说明 |
---|---|---|
完整名称 |
| 指定完整的目录和文件名,不包含通配符,表示监听指定目录下的指定文件,不监听其子目录。 |
文件名模糊匹配 |
| 不指定文件名,表示监听所有日志文件;指定部分文件名规则,表示监听符合规则的部分文件。 |
路径模糊匹配 |
| 通过 |
设置采集黑名单。
配置采集路径黑名单之后,日志服务通过 LogCollector 采集日志时,会忽略指定的目录和文件。选择启用后,请根据页面提示设置黑名单目录和文件。
说明
/var/log/project/*.log
,需要过滤其中/var/log/project
目录下的所有子目录,则采集路径黑名单应设置为目录路径,配置路径为/var/log/project/**
。采集路径黑名单中的路径类型支持设置为目录路径和文件路径。
配置 | 说明 |
---|---|
目录路径 | 采集时忽略指定的目录。目录路径支持完整匹配和通配符模式匹配。
|
文件路径 | 采集时忽略指定的文件,需配置文件路径及文件名。文件路径支持完整匹配和通配符模式匹配。
|
设置采集策略。
采集策略表示 LogCollector 采集增量日志还是全量日志。默认为增量日志。
配置 | 说明 |
---|---|
全量 | LogCollector 从每个文档的起始位置开始采集日志,此时 LogCollector 会采集历史日志数据。 |
增量 | LogCollector 采集日志时,只采集文件内新增的内容。监控范围内的日志文件写入新的日志时,触发 LogCollector 日志采集行为。对于首次采集的日志文件:
|
指定采集模式。
LogCollector 解析日志文件的模式,本文以单行全文模式为例。
在单行全文模式下,以 \n
作为一条日志的结束符,每行日志都会被封装到字段 __content__
中。原始日志本身不再进行结构化处理。
(可选)启用插件配置。
通过 LogCollector 采集文本日志时,如果业务日志结构复杂、格式不固定,无法通过 JSON 模式等常规的日志采集模式进行解析时,可以通过 LogCollector 插件进行采集后处理。详细说明请参考插件概述。
(可选)启用高级设置。
请根据您的需求选择高级配置。如果没有特殊需求,建议保持默认配置。
配置 | 说明 |
---|---|
过滤器 | 是否开启日志字段过滤规则。默认为关闭状态。开启后,通过正则表达式配置过滤规则,完全匹配正则表达式的日志才会被采集上报,帮助您筛选出有价值的日志数据。 |
上传解析失败日志 | 是否上传解析失败的日志,默认为关闭状态。
|
解析采集路径 | 通过正则表达式提取采集路径中的字段,并将其作为元数据添加到日志数据中。此功能默认为关闭状态。
|
HashKey路由Shard | 指定 HashKey 将数据写入到符合范围要求的日志分区。此功能默认为关闭状态。
|
上传原始日志 | 是否将原始日志作为一个字段上传到日志服务,默认为关闭状态。
|
上传常量字段 | 开启后,LogCollector 会将指定字段的 Key 和 Value 封装到每一条日志中。常量字段需遵循以下限制:
|
扩展配置 | LogCollector 扩展配置,JSON 对象格式。目前支持的参数包括 CloseInactive、CloseRemoved、CloseRenamed、CloseEOF 和 CloseTimeout。详细的参数说明请参考 Advanced。 |
确认采集配置,并单击下一步。
配置索引之后,您才能在控制台中实时预览采集到的日志数据,或进行日志检索与分析。详细操作请参考配置索引。