In my particular case I'm also using other processors, namely the add_fields processor. While that processor works, DNS silently fails.
There will be no source.hostname or destination.hostname in the http events dispatched to Elasticseach.
On a second thought I've noticed that this is not working for the auth module either, which leads me to believe that the DNS processor will not work on single line logs like Apache and SSH.
It's possible that this is related to the order in which the processor is ran. If it happens after the Filebeat pipeline transforms that single line log to ECS-mapped event, it should work (as the fields configured in the DNS processor are present), but if it happens before then it's not expected to work, as those single line logs don't hold any field:value schema.
I even copy paste the configuration above. it doesn't work. you can try for yourself. use dns processor and enable apache module. it will not work. try ssh module. it will not work.
processor doesnt pick none of them. if you try suricata. works.
Unfortunately, you cannot use the DNS processor like this with the Apache module. The fields source.ip and destination.ip are extracted from the log lines on Elasticsearch. Thus, when Filebeat tries to run the DNS processor, it cannot do anything, as those fields do not exist at that point of processing.
DNS processor can only work if you add the fields to the event beforehand.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.