本文为您介绍如何创建Logstash采集配置和处理配置。
操作步骤
- 创建一个配置文件到C:\logstash-2.2.2-win\conf\目录。
请根据实际情况,替换logstash-2.2.2-win。您可以为每种日志创建一个配置文件,格式为*.conf。
- 创建采集配置和处理配置。
请根据实际情况,配置如下信息(input为采集配置,详情配置请参见Logstash官方文档,output为处理配置),并添加到配置文件中。
说明
- 配置文件格式必须以UTF-8无BOM格式编码,可以通过notepad++修改文件编码格式。
- path字段中配置的文件路径,请使用UNIX模式的分隔符,例如C:/test/multiline/*.log,否则无法支持模糊匹配。
- type字段在同一个配置文件内保持一致。如果服务器上存在多个Logstash配置文件,请保证各配置文件中的type字段唯一。
input {
file {
type => "iis_log_1"
path => ["C:/inetpub/logs/LogFiles/W3SVC1/*.log"]
start_position => "beginning"
}
}
filter {
if [type] == "iis_log_1" {
#ignore log comments
if [message] =~ "^#" {
drop {}
}
grok {
# check that fields match your IIS log settings
match => ["message", "%{TIMESTAMP_ISO8601:log_timestamp} %{IPORHOST:site} %{WORD:method} %{URIPATH:page} %{NOTSPACE:querystring} %{NUMBER:port} %{NOTSPACE:username} %{IPORHOST:clienthost} %{NOTSPACE:useragent} %{NUMBER:response} %{NUMBER:subresponse} %{NUMBER:scstatus} %{NUMBER:time_taken}"]
}
date {
match => [ "log_timestamp", "YYYY-MM-dd HH:mm:ss" ]
timezone => "Etc/UTC"
}
useragent {
source=> "useragent"
prefix=> "browser"
}
mutate {
remove_field => [ "log_timestamp"]
}
}
}
output {
if [type] == "iis_log_1" {
logservice {
codec => "json"
endpoint => "***"
project => "***"
logstore => "***"
topic => ""
source => ""
access_key_id => "***"
access_key_secret => "***"
max_send_retry => 10
}
}
}
表 1. 处理配置参数说明
参数 |
说明 |
endpoint |
日志服务的服务入口。 |
project |
日志服务Project。 |
logstore |
日志服务Logstore。 |
topic |
日志主题。 |
source |
日志来源。如果为空,则自动取本机IP地址。 |
access_key_id |
阿里云账号的AccessKey ID。 |
access_key_secret |
阿里云账号的AccessKey Secret。 |
max_send_retry |
数据包发送到日志服务发生异常时的最大重试次数,重试不成功的数据包会被丢弃,重试间隔为200毫秒。 |
- 重启Logstash,详情请参见启动服务。
后续步骤
在PowerShell中启动logstash.bat,logstash进程会在前台工作,一般用于配置测试和采集调试。建议调试通过后,把Logstash设置为Windows服务。可以保持后台运行以及开机自启动。详情请参见设置Logstash为Windows服务。
在文档使用中是否遇到以下问题
更多建议
匿名提交