相关疑难解决方法(0)

在logstash中检索RESTful GET参数

我试图让logstash解析来自我的ELB日志文件的HTTP get请求中的键值对.

请求字段看起来像 http://aaa.bbb/get?a=1&b=2

我想那里是一个领域a,并b在上面的日志行,而我无法计算出来.

我的logstash conf(为清晰起见而格式化)低于该值不会加载任何其他关键字段.我假设我需要拆分URI的地址部分,但还没想出来.

input {
    file {
        path => "/home/ubuntu/logs/**/*.log"
        type => "elb"
        start_position => "beginning"
        sincedb_path => "log_sincedb"
    }
}
filter {
    if [type] == "elb" {
        grok {
            match => [ "message", "%{TIMESTAMP_ISO8601:timestamp} 
%{NOTSPACE:loadbalancer} %{IP:client_ip}:%{NUMBER:client_port:int}
%{IP:backend_ip}:%{NUMBER:backend_port:int} 
%{NUMBER:request_processing_time:float}
%{NUMBER:backend_processing_time:float} 
%{NUMBER:response_processing_time:float} 
%{NUMBER:elb_status_code:int}
%{NUMBER:backend_status_code:int} 
%{NUMBER:received_bytes:int} %{NUMBER:sent_bytes:int} 
%{QS:request}" ]
        }
        date {
            match => [ "timestamp", "ISO8601" ]
        }
        kv {
            field_split => "&?"
            source => "request"
            exclude_keys => ["callback"]
        }
    }
}


output …
Run Code Online (Sandbox Code Playgroud)

logstash logstash-configuration

4
推荐指数
1
解决办法
3293
查看次数

标签 统计

logstash ×1

logstash-configuration ×1