3.13一起试试

这里看起来像是我们的完整配置,如果我们把它们放在一个单一的文件:

[hekad]
maxprocs=2

[StatsdInput]

[StatAccumInput]
ticker_interval=1
emit_in_fields=true

[CarbonOutput]
message_matcher="Type=='heka.statmetric'"
address="mycarbonserver.example.com:2003"
protocol="udp"

[statmetric-influx-encoder]
type="SandboxEncoder"
filename="lua_encoders/statmetric_influx.lua"

[influx]
type="HttpOutput"
message_matcher="Type=='heka.statmetric'"
address="http://myinfluxserver.example.com:8086/db/stats/series"
encoder="statmetric-influx-encoder"
username="influx_username"
password="influx_password"

[stat_graph]
type="SandboxFilter"
filename="lua_filters/stat_graph.lua"
ticker_interval=1
preserve_data=true
message_matcher="Type=='heka.statmetric'"

[stat_graph.config]
num_rows=300
secs_per_row=1
stats="stats.counters.000000.countstats.counters.000001.countstats.counters.000002.count"
stat_labels="counter_0counter_1counter_2"
preservation_version=0

[DashboardOutput]
ticker_interval=1

[nginx_access_logs]
type="LogstreamerInput"
splitter="TokenSplitter"
decoder="nginx_access_decoder"
log_directory="/var/log/nginx"
file_match='access\.log\.?(?P<Index>\d+)?(.gz)?'
priority=["^Index"]

[nginx_access_decoder]
type="SandboxDecoder"
script_type="lua"
filename="lua_decoders/nginx_access.lua"

[nginx_access_decoder.config]
log_format='$remote_addr-$remote_user[$time_local]"$request"$status$body_bytes_sent"$http_referer""$http_user_agent"'
type="nginx.access"

[ESJsonEncoder]
es_index_from_timestamp=true
type_name="%{Type}"

[ElasticSearchOutput]
message_matcher="Type=='nginx.access'"
encoder="ESJsonEncoder"
flush_interval=50

[http_status]
type="SandboxFilter"
filename="lua_filters/http_status.lua"
ticker_interval=1
preserve_data=true
message_matcher="Type=='nginx.access'"

[http_status.config]
sec_per_row=1
rows=1440
perservation_version=0
anomaly_config='roc("HTTPStatus",2,15,0,1.5,true,false)mww_nonparametric("HTTPStatus",5,15,10,0.8)'

[alert_smtp_encoder]
type="SandboxEncoder"
filename="lua_encoders/alert.lua"

[SmtpOutput]
message_matcher="Type=='heka.sandbox-output'&&Fields[payload_type]=='alert'"
encoder="alert_smtp_encoder"
send_from="heka@example.com"
send_to=["alert_recipient@example.com"]
auth="Plain"
user="smtpuser"
password="smtpassword"
host="127.0.0.1:25"

这不是太长,但即使如此,可能很好把它分成更小的块。Heka支持使用目录而不是单个文件进行配置;如果指定目录,则以.toml结尾的所有文件将合并在一起并作为单个配置加载,这对于更复杂的部署是优选的。
这个例子绝不意味着是Heka的特征的详尽列表。事实上,我们只是刚刚接触表面。它可以用作开发配置,以满足你自己的需求的起点。如果你有问题或需要帮助,请使用邮件列表,或使用IRC客户端访问irc.mozilla.org的#heka频道。

taxonomy: