【发布时间】:2021-04-13 22:24:48
【问题描述】:
如何从所有容器 pod azure Kubernetes 记录(stdout / stderr)到事件中心。 我可以通过 Log Analytics 工作区查看所有日志 >> 使用 Azure 查询语言的日志。
我想将所有日志发送到事件中心。
任何人都可以就此提出建议吗?
【问题讨论】:
标签: azure kubernetes azure-eventhub
如何从所有容器 pod azure Kubernetes 记录(stdout / stderr)到事件中心。 我可以通过 Log Analytics 工作区查看所有日志 >> 使用 Azure 查询语言的日志。
我想将所有日志发送到事件中心。
任何人都可以就此提出建议吗?
【问题讨论】:
标签: azure kubernetes azure-eventhub
您可以通过 Fluent-Bit 的 Kafka 输出轻松地将容器日志转发到事件中心。
这是 Kafka 的 Fluent-Bit 文档 - https://docs.fluentbit.io/manual/pipeline/outputs/kafka
这里是 Kafka 客户端与事件中心的集成 - https://docs.microsoft.com/en-us/azure/event-hubs/event-hubs-for-kafka-ecosystem-overview
【讨论】:
使用 fluentbit kafka 输出到 Azure EventHub 为我工作
td-agent-bit.conf
[INPUT]
Name tail
Path xxx.log
Refresh_Interval 10
[OUTPUT]
Name kafka
Match *
brokers xxx.xxx.windows.net:9093
topics xxx
rdkafka.security.protocol SASL_SSL
rdkafka.sasl.username $ConnectionString
rdkafka.sasl.password Endpoint=sb://xxx.xxx.windows.net/;SharedAccessKeyName=xxx;SharedAccessKey=xxx
rdkafka.sasl.mechanism PLAIN
[OUTPUT]
name stdout
match *
在 docker 容器内(必须有或代理关闭/ssl 失败)
docker-compose.yml
version: "3.7"
services:
fluent-bit:
image: fluent/fluent-bit:1.6.2
container_name: fluentbit
restart: always
volumes:
- ./td-agent-bit.conf:/fluent-bit/etc/fluent-bit.conf
- ./xxx.log:/fluent-bit/etc/xxx.log:ro
【讨论】: