我创建了简单的脚本来测试 Grafana Loki。它通过 Fluentbit 发送消息:
from fluent import sender
messages = [
{'from': 'userA', 'to': 'userB', 'log': 'Hello!'},
{'from': 'userB', 'to': 'userA', 'log': 'Hi!'},
]
for message in messages:
logger = sender.FluentSender('app', host='foo', port=24224)
result = logger.emit('app.messages', message)
if result:
print('Message sent: {}'.format(message))
流利位配置:
[INPUT]
Name forward
Listen 0.0.0.0
Port 24224
[Output]
Name loki
Match *
Url ${LOKI_URL}
RemoveKeys source
Labels {job="remote-log"}
LabelKeys container_name
BatchWait 1
BatchSize 1001024
LineFormat json
LogLevel info
我在 Grafana 中收到消息:
格拉法纳正在展示no unique labels
。如何设置唯一标签,一般如何添加它们?我认为一旦将消息作为标签的第一个参数发送就可以完成logger.emit
,但在 Grafana 中缺少它。我可能会扩展我的 Fluent Bit 配置来进行过滤...但是在 App 级别设置标签会很酷