Есть возможность просмотра полного отчета в формате JSON (флаг --report json), либо дебажного (флаг --report debug).
Из Lua можно возвращать строку, которая будет помещена в поле Incident text, если она не возвращается то вычисляется эвристически. Это можно использовать так:
local re = require 'drweb.regex'
local blacklist = dw.load_array('/opt/drweb.com/lists/blacklist')
function milter_hook(ctx)
if re.search(blacklist, ctx.from, regex.ignore_case) then
return {action = 'reject', incident = 'blacklist'}
end
return {action = 'accept'}
end
Тогда в выводе drweb-ctl events будет следующее:
ID: 197
Time: 2019-05-20 14:41:40
From: devnull@drweb.com
Incident text: blacklist
Interface: MILTER
Milter status: REJECT
Помимо этого вы можете явно указать, что это событие не является инцидентом. Для этого нужно вернуть incident = false.