我创建了简单的脚本来测试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中收到消息:
Grafana显示no unique labels
。如何设置唯一标签,以及通常如何添加它们?我认为一旦logger.emit
的第一个参数是label,就可以发送消息了,但是Grafana中缺少它。我可能会扩展Fluent Bit配置以进行过滤...但是在应用程序级别设置标签会很酷