mirror of
https://github.com/KevinMidboe/playbooks-retailor.git
synced 2026-09-07 21:42:06 +00:00
54 lines
1.4 KiB
Django/Jinja
54 lines
1.4 KiB
Django/Jinja
# ansible_managed
|
|
input {
|
|
beats {
|
|
port => 5045
|
|
}
|
|
}
|
|
|
|
filter {
|
|
grok {
|
|
match => [ "message" , "%{COMBINEDAPACHELOG}+%{GREEDYDATA:extra_fields}"]
|
|
overwrite => [ "message" ]
|
|
}
|
|
|
|
mutate {
|
|
rename => { "extra_fields" => "real_ip" }
|
|
gsub => [ "real_ip", "\"", "" ] # remove qoutes
|
|
gsub => [ "real_ip", " ", "" ] # remove whitespace
|
|
|
|
# fix
|
|
convert => ["http.response.status_code", "integer"]
|
|
convert => ["http.response.body.bytes", "integer"]
|
|
convert => ["responsetime", "float"]
|
|
remove_field => ["host.containerized"]
|
|
}
|
|
|
|
geoip {
|
|
source => "real_ip"
|
|
target => "geoip"
|
|
fields => ["city_name", "region_name", "country_name", "region_iso_code", "country_code2", "location"]
|
|
}
|
|
|
|
date {
|
|
match => [ "timestamp" , "dd/MMM/YYYY:HH:mm:ss Z" ]
|
|
remove_field => [ "timestamp" ]
|
|
}
|
|
}
|
|
|
|
output {
|
|
elasticsearch {
|
|
# Reach Elasticsearch over the shared docker network using its service name.
|
|
hosts => ["{{ 'https' if elk_tls_enabled else 'http' }}://{{ elk_elasticsearch_client_host }}:9200"]
|
|
{% if elk_effective_security_enabled %}
|
|
user => "logstash_system"
|
|
password => "{{ elk_logstash_system_password }}"
|
|
{% endif %}
|
|
{% if elk_tls_enabled %}
|
|
ssl_enabled => true
|
|
# Public CA (Let's Encrypt) - trusted by Logstash's default JVM trust
|
|
# store already, no custom CA needs to be supplied here.
|
|
{% endif %}
|
|
index => "weblogs-%{+YYYY.MM}"
|
|
}
|
|
}
|