I need to setup an alert on all search heads if any universal forwarder has not sent data in last 6 or 4 hours. The alerts have to trigger and send an email with output of missing hosts.
I have tried to use this one but it is not working.
|metadata type=hosts index=*| table host lastTime | where lastTimerelative_time(now(),"-30d@d")
| convert timeformat="%Y%m%d" ctime(lastTime) AS LastTime
Well, the reason could be that the where command is looking for a "last time" of over 30 days ago - and you have a typo.
Try this
|metadata type=hosts index=*
| table host lastTime
| where lastTime < relative_time(now(),"-4h")
| eval lastTime = strftime(lastTime, "%x %X")