- Filebeat 参考其他版本
- Filebeat 概述
- 快速入门:安装和配置
- 设置和运行
- 升级
- Filebeat 的工作原理
- 配置
- 输入
- 模块
- 通用设置
- 项目路径
- 配置文件加载
- 输出
- Kerberos
- SSL
- 索引生命周期管理 (ILM)
- Elasticsearch 索引模板
- Kibana 端点
- Kibana 仪表板
- 处理器
- 定义处理器
- add_cloud_metadata
- add_cloudfoundry_metadata
- add_docker_metadata
- add_fields
- add_host_metadata
- add_id
- add_kubernetes_metadata
- add_labels
- add_locale
- add_network_direction
- add_nomad_metadata
- add_observer_metadata
- add_process_metadata
- add_tags
- append
- cache
- community_id
- convert
- copy_fields
- decode_base64_field
- decode_cef
- decode_csv_fields
- decode_duration
- decode_json_fields
- decode_xml
- decode_xml_wineventlog
- decompress_gzip_field
- detect_mime_type
- dissect
- dns
- drop_event
- drop_fields
- extract_array
- fingerprint
- include_fields
- move_fields
- parse_aws_vpc_flow_log
- rate_limit
- registered_domain
- rename
- replace
- script
- syslog
- timestamp
- translate_ldap_attribute
- translate_sid
- truncate_fields
- urldecode
- 自动发现
- 内部队列
- 日志记录
- HTTP 端点
- 正则表达式支持
- 检测
- 功能标志
- filebeat.reference.yml
- 操作指南
- 模块
- 模块概述
- ActiveMQ 模块
- Apache 模块
- Auditd 模块
- AWS 模块
- AWS Fargate 模块
- Azure 模块
- CEF 模块
- Check Point 模块
- Cisco 模块
- CoreDNS 模块
- CrowdStrike 模块
- Cyberark PAS 模块
- Elasticsearch 模块
- Envoyproxy 模块
- Fortinet 模块
- Google Cloud 模块
- Google Workspace 模块
- HAproxy 模块
- IBM MQ 模块
- Icinga 模块
- IIS 模块
- Iptables 模块
- Juniper 模块
- Kafka 模块
- Kibana 模块
- Logstash 模块
- Microsoft 模块
- MISP 模块
- MongoDB 模块
- MSSQL 模块
- MySQL 模块
- MySQL Enterprise 模块
- NATS 模块
- NetFlow 模块
- Nginx 模块
- Office 365 模块
- Okta 模块
- Oracle 模块
- Osquery 模块
- Palo Alto Networks 模块
- pensando 模块
- PostgreSQL 模块
- RabbitMQ 模块
- Redis 模块
- Salesforce 模块
- Santa 模块
- Snyk 模块
- Sophos 模块
- Suricata 模块
- System 模块
- Threat Intel 模块
- Traefik 模块
- Zeek (Bro) 模块
- ZooKeeper 模块
- Zoom 模块
- 导出的字段
- ActiveMQ 字段
- Apache 字段
- Auditd 字段
- AWS 字段
- AWS CloudWatch 字段
- AWS Fargate 字段
- Azure 字段
- Beat 字段
- 解码 CEF 处理器字段
- CEF 字段
- Checkpoint 字段
- Cisco 字段
- 云提供商元数据字段
- Coredns 字段
- Crowdstrike 字段
- CyberArk PAS 字段
- Docker 字段
- ECS 字段
- Elasticsearch 字段
- Envoyproxy 字段
- Fortinet 字段
- Google Cloud Platform (GCP) 字段
- google_workspace 字段
- HAProxy 字段
- 主机字段
- ibmmq 字段
- Icinga 字段
- IIS 字段
- iptables 字段
- Jolokia Discovery 自动发现提供程序字段
- Juniper JUNOS 字段
- Kafka 字段
- kibana 字段
- Kubernetes 字段
- 日志文件内容字段
- logstash 字段
- Lumberjack 字段
- Microsoft 字段
- MISP 字段
- mongodb 字段
- mssql 字段
- MySQL 字段
- MySQL Enterprise 字段
- NATS 字段
- NetFlow 字段
- Nginx 字段
- Office 365 字段
- Okta 字段
- Oracle 字段
- Osquery 字段
- panw 字段
- Pensando 字段
- PostgreSQL 字段
- 进程字段
- RabbitMQ 字段
- Redis 字段
- s3 字段
- Salesforce 字段
- Google Santa 字段
- Snyk 字段
- sophos 字段
- Suricata 字段
- System 字段
- threatintel 字段
- Traefik 字段
- Windows ETW 字段
- Zeek 字段
- ZooKeeper 字段
- Zoom 字段
- 监控
- 安全
- 故障排除
- 获取帮助
- 调试
- 了解记录的指标
- 常见问题
- 在使用 Kubernetes 元数据时提取容器 ID 时出错
- 无法从网络卷读取日志文件
- Filebeat 未从文件中收集行
- 打开的文件句柄过多
- 注册表文件太大
- Inode 重用导致 Filebeat 跳过行
- 日志轮换导致事件丢失或重复
- 打开的文件句柄导致 Windows 文件轮换出现问题
- Filebeat 占用过多 CPU
- Kibana 中的仪表板错误地分解数据字段
- 字段未在 Kibana 可视化中编制索引或可用
- Filebeat 未传输文件的最后一行
- Filebeat 长时间保持已删除文件的打开文件句柄
- Filebeat 使用过多带宽
- 加载配置文件时出错
- 发现意外或未知字符
- Logstash 连接不起作用
- 发布到 Logstash 失败,并显示“connection reset by peer”消息
- @metadata 在 Logstash 中丢失
- 不确定是使用 Logstash 还是 Beats
- SSL 客户端无法连接到 Logstash
- 监控 UI 显示的 Beats 比预期的少
- 仪表板无法定位索引模式
- 由于 MADV 设置导致高 RSS 内存使用率
- 为 Beats 做贡献
在 Cloud Foundry 上运行 Filebeat
编辑在 Cloud Foundry 上运行 Filebeat
编辑您可以在 Cloud Foundry 上使用 Filebeat 来检索和发送日志。
创建 Cloud Foundry 凭据
编辑要连接到 loggregator 并接收日志,Filebeat 需要使用 UAA 创建的凭据。 uaac
命令会创建连接到 loggregator 所需的凭据。
uaac client add filebeat --name filebeat --secret changeme --authorized_grant_types client_credentials,refresh_token --authorities doppler.firehose,cloud_controller.admin_read_only
使用唯一的密钥: 此处显示的 uaac
命令是一个示例。请记住将 changeme
替换为您自己的密钥,并更新 filebeat.yml
文件以使用您选择的密钥。
下载 Cloud Foundry 部署清单
编辑您将 Filebeat 作为没有路由的应用程序部署。
Cloud Foundry 要求目录中存在 3 个文件,以便可以将 Filebeat 推送。以下命令提供了启动并运行它的基本步骤。
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.17.0-linux-x86_64.tar.gz tar xzvf filebeat-8.17.0-linux-x86_64.tar.gz cd filebeat-8.17.0-linux-x86_64 curl -L -O https://raw.githubusercontent.com/elastic/beats/8.17/deploy/cloudfoundry/filebeat/filebeat.yml curl -L -O https://raw.githubusercontent.com/elastic/beats/8.17/deploy/cloudfoundry/filebeat/manifest.yml
您需要修改 filebeat.yml
文件以设置 api_address
、client_id
和 client_secret
。
加载 Kibana 仪表板
编辑Filebeat 打包了各种预构建的 Kibana 仪表板,您可以使用它们在 Kibana 中可视化数据。
如果这些仪表板尚未加载到 Kibana 中,则必须运行 Filebeat 的 setup
命令。要了解如何操作,请参阅 加载 Kibana 仪表板。
setup
命令不会加载用于解析日志行的摄取管道。默认情况下,首次运行 Filebeat 并连接到 Elasticsearch 时,会自动设置摄取管道。
如果您使用的是除 Elasticsearch 之外的其他输出(例如 Logstash),则需要
部署 Filebeat
编辑要将 Filebeat 部署到 Cloud Foundry,请运行
cf push
要检查状态,请运行
$ cf apps name requested state instances memory disk urls filebeat started 1/1 512M 1G
日志事件应开始流向 Elasticsearch。这些事件会使用 add_cloudfoundry_metadata 处理器添加的元数据进行注释。
缩放 Filebeat
编辑Filebeat 的单个实例每分钟可以发送超过 10 万个事件。如果您的 Cloud Foundry 部署生成的事件多于 Filebeat 可以收集和发送的事件,Firehose 将开始丢弃事件,并且会将 Filebeat 标记为慢速使用者。如果问题持续存在,Filebeat 可能会与 Firehose 断开连接。在这种情况下,您需要缩放 Filebeat 以避免丢失事件。
您需要考虑的主要设置是
- 在
cloudfoundry
输入配置中指定的shard_id
。Firehose 会将事件分配给所有具有相同设置值的 Filebeat 实例。具有相同shard_id
的所有实例都应具有相同的配置。 - Filebeat 实例数。当 Filebeat 作为 Cloud Foundry 应用程序部署时,可以使用
cf scale
或通过在清单中指定实例数来像任何其他应用程序一样进行缩放。 - 输出配置。在某些情况下,您可以微调输出配置以提高事件吞吐量。一些输出支持多个工作线程。可以更改工作线程的数量以更好地利用可用资源。
当 Filebeat 无法收集所有事件时,调整这些设置的一些基本建议
- 如果 Filebeat 达到其 CPU 限制,您将需要增加使用相同
shard_id
部署的 Filebeat 实例数。 - 如果 Filebeat 有一些空闲 CPU,则可能是输出存在一些背压。尝试增加输出中的工作线程数。如果这没有帮助,则瓶颈可能在网络中或在接收 Filebeat 发送的事件的服务中。
- 如果您需要修改 Filebeat 的内存限制,请记住分配给 Cloud Foundry 应用程序的 CPU 份额取决于配置的内存限制。之后,您可能需要检查其他建议。