loki.source.azure_event_hubs
loki.source.azure_event_hubs
通过使用 Event Hubs 上的 Apache Kafka 端点接收 Azure 事件中心消息。有关详细信息,请参阅 Azure 事件中心文档。
要了解如何将 Azure 日志流式传输到 Azure 事件中心,请参阅 Microsoft 关于如何将 Azure Active Directory 日志流式传输到 Azure 事件中心的教程。
基本定价计划中不提供 Apache Kafka 端点。有关详细信息,请参阅事件中心定价页面。
您可以通过为多个 loki.source.azure_event_hubs
组件指定不同的标签来使用它们。
用法
loki.source.azure_event_hubs "<LABEL>" {
fully_qualified_namespace = "<HOST:PORT>"
event_hubs = "<EVENT_HUB_LIST>"
forward_to = <RECEIVER_LIST>
authentication {
mechanism = "AUTHENTICATION_MECHANISM"
}
}
参数
您可以在 loki.source.azure_event_hubs
中使用以下参数
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
event_hubs | list(string) | 要消费的事件中心。 | 是 | |
forward_to | list(LogsReceiver) | 要发送日志条目的接收器列表。 | 是 | |
fully_qualified_namespace | string | 事件中心命名空间。 | 是 | |
assignor | string | 要使用的消费者组重新平衡策略。 | "range" | 否 |
disallow_custom_messages | bool | 是否忽略不符合 Azure 资源日志 schema 的消息。 | false | 否 |
group_id | string | Kafka 消费者组 ID。 | "loki.source.azure_event_hubs" | 否 |
labels | map(string) | 与每个接收到的事件关联的标签。 | {} | 否 |
relabel_rules | RelabelRules | 应用于日志条目的重新标记规则。 | {} | 否 |
use_incoming_timestamp | bool | 是否使用从 Azure 事件中心接收到的时间戳。 | false | 否 |
fully_qualified_namespace
参数必须引用指向您的事件中心的完整 HOST:PORT
,例如 NAMESPACE.servicebus.windows.net:9093
。assignor
参数必须设置为 "range"
、"roundrobin"
或 "sticky"
之一。
relabel_rules
字段可以使用 loki.relabel
组件的 rules
导出值,在日志条目转发到 forward_to
中的接收器列表之前对其应用一条或多条重新标记规则。
标签
labels
映射应用于组件读取的每条消息。
以下带有 __
前缀的内部标签可用,但如果未重新标记,则会被丢弃
__azure_event_hubs_category
__meta_kafka_group_id
__meta_kafka_member_id
__meta_kafka_message_key
__meta_kafka_partition
__meta_kafka_topic
块
您可以在 loki.source.azure_event_hubs
中使用以下块
名称 | 描述 | 必需 |
---|---|---|
authentication | Azure 事件中心的认证配置。 | 是 |
authentication
必需
authentication
块定义了与 Azure 事件中心通信时的认证方法。
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
mechanism | string | 认证机制。 | 是 | |
connection_string | secret | 用于在 Azure Cloud 上进行认证的事件中心连接字符串。 | 否 | |
scopes | list(string) | 访问令牌范围。默认值为不带端口的 fully_qualified_namespace 。 | 否 |
mechanism
支持的值为 "connection_string"
和 "oauth"
。如果使用 "connection_string"
,必须设置 connection_string
属性。如果使用 "oauth"
,必须通过环境变量或 Azure CLI 配置支持的 credential 类型之一。
导出字段
loki.source.azure_event_hubs
不导出任何字段。
组件健康状态
只有在提供了无效配置时,loki.source.azure_event_hubs
才会被报告为不健康。
调试信息
loki.source.azure_event_hubs
不暴露额外的调试信息。
示例
此示例从 Azure 事件中心消费消息,并使用 OAuth 2.0 进行认证。
loki.source.azure_event_hubs "example" {
fully_qualified_namespace = "my-ns.servicebus.windows.net:9093"
event_hubs = ["gw-logs"]
forward_to = [loki.write.example.receiver]
authentication {
mechanism = "oauth"
}
}
loki.write "example" {
endpoint {
url = "loki:3100/api/v1/push"
}
}
兼容组件
loki.source.azure_event_hubs
可以接受来自以下组件的参数
- 导出 Loki
LogsReceiver
的组件
注意
连接某些组件可能不合理,或者组件可能需要进一步配置才能使连接正常工作。有关更多详细信息,请参阅链接的文档。