增加微信订阅号(在右侧),关注后,及时收到最新更新的文章。

Heka指南 – 入门示例及配置(3)

Heka 智菲尔 1528℃ 0评论

目录索引传送门

在此,使用一个简单的示例开始 Heka 的使用。

示例

该示例将加载本地的一个日志文件,使用空白符及换行分隔,打印至标准输出,配置文件 test.toml 如下:

[log-test-input]
type = "LogstreamerInput"
log_directory = "/root/work"
file_match = 'test\.log'
splitter = "log-test-splitter"

[log-test-splitter]
type = "RegexSplitter"
delimiter = '\s+'
delimiter_eol = false

[log-test-encoder]
append_newlines = true
type = "PayloadEncoder"
prefix_ts = false

[log-test-output]
type = "LogOutput"
message_matcher = "TRUE"
encoder = "log-test-encoder"

创建日志文件 /root/work/test.log,然后启动 hekad 进程:

hekad -config test.toml

向日志中输入一些内容:

echo -e "Hello world.\n This is a demo of heked." >> test.log

查看日志文件中的内容:

Hello world.
 This is a demo of heked.

heked 的标准输出:

2017/04/30 10:00:27 Hello
2017/04/30 10:00:27 world.
2017/04/30 10:00:27 This
2017/04/30 10:00:27 is
2017/04/30 10:00:27 a
2017/04/30 10:00:27 demo
2017/04/30 10:00:27 of
2017/04/30 10:00:27 heked.

配置释义

Heka 的配置文件采用 TOML 格式,使用 [] 来区分一段段配置:

  • [log-test-input] 命名Input配置。
    • type = “LogstreamerInput”;配置段的类型,可以直接将此类型当作配置段的名称,就可以省略此配置。
    • log_directory = “/root/work”; 配置日志文件的目录。LogstreamerInput 会递归搜索目录及子目录下的日志文件。
    • file_match = ‘test\.log’;配置匹配日志文件的正则表达式;使用单引号来配置,若使用双引号,则为:”test\\.log”。
    • splitter = “log-test-splitter”;指定日志分隔器名称。
  • [log-test-splitter] 命名分隔器。
    • type = “RegexSplitter”;指定分隔器的类型为正则表达式分隔器:RegexSplitter。
    • delimiter = ‘\s+’;正则表达式分隔字符。
    • delimiter_eol = false;是否识别正则表达式 捕获组。
  • [log-test-encoder] 命名输出序列化工具。
    • append_newlines = true;配置是否输出自动增加新行。
    • type = “PayloadEncoder”;序列化插件类型。
    • prefix_ts = false;是否增加前缀时间戳。
  • [log-test-output] 命名输出插件。
    • type = “LogOutput”;输出插件类型。
    • message_matcher = “TRUE”;配置 输出插件对 heka 消息进行匹配的规则;TRUE为全部匹配。
    • encoder = “log-test-encoder”;指定输出的序列化工具。

例子中的 LogstreamerInput 会记录日志读取的游标,当使用 Ctrl-C 停止 hekad 后,再重新启动 hekad,将不会读取之前已经读取过的数据;默认情况下,Heka  会将此记录在目录 /var/cache/hekad/logstreamer/LogstreamerInput 下;如果删除了此文件,重新启动后,将会从头读取文件内容。

转载请注明:子暃之路 » Heka指南 – 入门示例及配置(3)

喜欢 (2)or分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址