菜单
文档breadcrumb arrow Grafana Alloybreadcrumb arrow 参考breadcrumb arrow 组件breadcrumb arrow lokibreadcrumb arrow loki.source.journal
开源

洛基资源.journal

loki.source.journal 从systemd journal读取并将它们转发到其他 loki.* 组件。

可以通过提供不同的标签来指定多个 loki.source.journal 组件。

注意

确保 grafana-alloy 用户是该以下组的一员

  • adm
  • systemd-journal

用法

alloy
loki.source.journal "LABEL" {
  forward_to    = RECEIVER_LIST
}

参数

该组件启动一个新的日志读取器,并将日志条目扇出到 forward_to 中传递的接收者列表。

loki.source.journal 支持以下参数

名称类型描述默认值必需
format_as_json布尔值是否将原始日志条目作为JSON转发。false
max_age持续时间从进程启动时间算起最老的相对时间将会被读取。"7h"
path字符串从目录中读取条目的路径。""
matches字符串日志匹配以进行过滤。不支持 + 字符,只有逻辑AND匹配会被添加。""
forward_to列表(LogsReceiver)要发送日志条目的接收者列表。
relabel_rulesRelabelRules应用于日志条目的重命名规则。{}
labels映射(字符串)应用于从日志中输出的每个日志的标签。{}

注意

添加一个 job 标签,包含组件的全名 loki.source.journal.LABEL

format_as_json 参数为真时,日志消息作为包含日志条目所有原始字段的JSON传递。否则,日志消息从日志条目的 MESSAGE 字段的内容中获取。

path 参数为空时,使用 /var/log/journal/run/log/journal 来发现日志条目。

relabel_rules 参数可以使用来自 loki.relabel 组件的 rules 导出值来将一个或多个重命名规则应用于日志条目,在它们被转发到 forward_to 中指定的接收者列表之前。

从日志中读取的所有消息包括遵循模式 __journal_FIELDNAME 的内部标签,在发送到指定在 forward_to 中的接收者列表之前将被删除。要保留这些标签,请使用 relabel_rules 参数并重新命名它们,使其不以 __ 开头。

注意

来自journald的许多字段名称以一个 _ 开头,例如 _systemd_unit。最后的内部标签名称将是 __journal__systemd_unit,在 __journalsystemd_unit 之间有 两个 底线。

组件健康

loki.source.journal 仅在配置无效时报告为不健康。

调试度量

  • loki_source_journal_target_parsing_errors_total (计数器):读取日志消息时解析错误的总数。
  • loki_source_journal_target_lines_total (计数器):成功读取的日志行总数。

示例

alloy
loki.relabel "journal" {
  forward_to = []

  rule {
    source_labels = ["__journal__systemd_unit"]
    target_label  = "unit"
  }
}

loki.source.journal "read"  {
  forward_to    = [loki.write.endpoint.receiver]
  relabel_rules = loki.relabel.journal.rules
  labels        = {component = "loki.source.journal"}
}

loki.write "endpoint" {
  endpoint {
    url ="loki:3100/api/v1/push"
  }
}

兼容组件

loki.source.journal 可以接受来自以下组件的参数

注意

连接一些组件可能不合理或组件可能需要进一步配置以确保连接正确工作。请参阅相关文档以获取更多详细信息。