You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

想要在Kibana查看Azure Function日志,应该在哪里安装Filebeat?

Azure Functions对接Elastic的Filebeat部署方案

核心说明

你不需要在Azure Functions的运行实例上安装Filebeat。Azure Functions属于无服务器PaaS服务,底层主机由Azure托管,你没有权限直接在实例上安装第三方进程,官方文档里的「在被监控系统上安装」是针对传统主机/虚拟机场景的说明,不适用于无服务器服务。

你之前了解的Filebeat监听Event Hub转发日志的方案是正确的,该场景下Filebeat是作为独立的Event Hub消费者运行,只需要部署在任何可以同时连通Azure Event Hub和Elastic Cloud的运行环境中即可。

可选部署位置

  • Azure 容器实例(ACI)

    适合中小规模日志量的轻量场景,不需要管理底层服务器,直接拉取官方Filebeat镜像挂载配置启动即可,按实际使用时长计费,成本低。
  • Azure App Service(容器部署模式)

    适合需要长期稳定运行的场景,自带健康检查、自动重启能力,运维成本低。
  • Azure Kubernetes Service(AKS)

    如果你已经有AKS集群,可直接将Filebeat作为Deployment部署到集群中,方便根据日志量自动扩缩容,适合大规模日志场景。
  • 自行管理的虚拟机/物理服务器

    只要你的服务器可以公网访问Azure Event Hub和Elastic Cloud,也可以直接在这类设备上安装运行Filebeat进程。

配套配置要点

  1. 首先完成Azure Functions日志导出到Event Hub的配置:进入Azure Functions门户的「诊断设置」页面,新增诊断规则,选择需要导出的日志类别(如FunctionAppLogs、AppServiceConsoleLogs等),目标端选择你提前创建的Event Hub实例即可。
  2. Filebeat配置参考:
# 输入配置
filebeat.inputs:
- type: azure-eventhub
  connection_string: "你的Event Hub连接字符串"
  eventhub: "你的Event Hub实例名称"
  consumer_group: "你为Filebeat创建的Event Hub消费者组"
  storage_account: "用于存储消费偏移量的存储账号名称"
  storage_account_key: "存储账号密钥"
  storage_account_container: "存储偏移量的容器名称"

# 输出配置
output.elasticsearch:
  hosts: ["你的Elastic Cloud端点地址"]
  username: "Elastic用户名"
  password: "Elastic密码"
  1. 部署注意事项:
  • Filebeat运行实例的数量不要超过Event Hub的分区数量,避免出现消费冲突
  • 多实例部署时所有实例需使用同一个消费者组,避免重复消费日志
  • 给Event Hub的连接字符串只分配监听权限即可,遵循最小权限原则

内容的提问来源于stack exchange,提问作者Daniel Silva

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 02:48:03