elk-hole
elasticsearch, logstash and kibana configuration for pi-hole visualization
elk-hole provides the relevant files and configuration to easily visualize pi-holes/dnsmasq statistics via the popular elasticstack.
show, search, filter and customize pi-hole statistics ... the elk way
requirements:
working installation of:
- logstash (currently tested up to version "7.1.0")
- elasticsearch (currently tested up to version with "7.1.0")
- kibana (currently tested up to version "7.1.0")
- filebeat on pi-hole (tested with "1.3.1" & "7.1.1")
-> installation of the elk stack - refer to https://www.elastic.co/ for details.
this repo provides the relevant files and configuration for sending the pi-hole logs via filebeat directly to logstash/elasticsearch. We will then visualize the logs in kibana with a custom dashboard.
The result will look like this:
HOW TO USE
LOGSTASH HOST
- copy "/conf.d/20-dns-syslog.conf" to your logstash folder (usually /etc/logstash)
- customize "ELASTICSEARCHHOST:PORT" in the output section at the bottom of the file
- copy "dns" to "/etc/logstash/patterns/"
- restart logstash
PI-HOLE
- copy "/etc/filebeat/filebeat.yml" to your filebeat installation at the pi-hole instance
- customize "LOGSTASHHOST:5141" to match your logstash hostname/ip
- restart filebeat
- copy 99-pihole-log-facility.conf to /etc/dnsmasq.d/
- restart pi-hole
KIBANA HOST (CAN BE THE SAME AS LOGSTASH AND ELASTICSEARCH)
- import suitable "json/elk-hole *.json" for your version into kibana: management - saved objects - import
- optionally reload kibanas field list
You should then be able to see your new dashboard and visualizations.
credits to skaldenhoven who contributed quiet some nice details to the configuration and parsing logic as well as troubleshooting and testing!