We need to create a decoder for the following Barracuda log. Some of the fields are already being parsed by the predecoder. Please help in creating a parent decoder that specifically matches this log type.
Additionally, the decoder should uniquely match logs where the hostname is “barracuda” and the program name is “servermon” to ensure accurate identification.
Sample Log:
Fields decoded by the predecoder:
predecoder.hostname: barracuda
predecoder.program_name: servermon
predecoder.timestamp: Oct 30 18:12:07
The log is already pre-decoded with program_name=servermon, so I used the <program_name> tag to match the decoder to those events.
You can refer to the Wazuh decoder syntax documentation for more details on tags like <program_name>, <regex>, and <order>.
For the pattern itself, see the Wazuh regex documentation. You can adjust the regex to fit any variations in your logs.

This log is in syslog format, and Wazuh pre-decodes syslog fields automatically. Because of that, we cannot decode this field again using a custom decoder — it is already processed by the Wazuh pre-decoder.
However, the field will still appear in the Wazuh Dashboard when an alert is triggered. It will be available under the field name: predecoder.hostname

If you specifically need to decode this field using your own custom decoder (instead of using the pre-decoded value), then you would need to add a prefix or marker in front of each log before sending it to the Wazuh Manager.
This changes the log format so that Wazuh will not treat it as standard syslog, allowing you to create a custom decoder to process all fields from start to end as needed.

If this is your requirement and you'd like assistance, please let me know how you are forwarding the logs to Wazuh (e.g., Wazuh agent localfile, rsyslog, syslog-ng etc.), and I can guide you with the exact configuration.