Hi
I have logstash that get the syslog from other machines.
The conf.d file is like:
input {
tcp {
port => 514
type => syslog
}
udp {
port => 514
type => syslog
}
}
filter {
if [type] == "syslog" {
grok {
match => { "message" => "%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_hostname} %{DATA:syslog_program}(?:\[%{POSINT:syslog_pid}\])?: %{GREEDYDATA:syslog_message}" }
add_field => [ "received_at", "%{@timestamp}" ]
add_field => [ "received_from", "%{host}" ]
}
date {
match => [ "syslog_timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ]
}
}
}
output {
elasticsearch { hosts => [":9200"] }
}
I want to use the feild message with terms in Visualize but there is no feild message to select.
I have read that this happen when the feild message is not having "keyword" so it can't be used to be aggregatable.
Is this the reall reason?
How can I add for the message feild:
"fields": {
"keyword": {
"type": "keyword"
}
}
Do I have to change the mapping? and how can I do so?