index IN (wineventappsys_*) EventCode=7036 host IN (ABC,DEF,GHI)
| stats count by _time,Message, host,EventCode, SourceName, LogName
| fields - count
| rex field="Message" "The\s+(?<service>.+)\s+service\s+entered\s+the\s+(?<state>\w+)\s+state"
| eventstats latest(_time) as latest_time by service, host
| where _time=latest_time
| fields - latest_time
| search state=stopped
| lookup service_list Message OUTPUT Short_Description Severity
| eval State="OPEN"
| sort - host Date ShortDescription if you are okay with latest service state to be running or closed, you can remove search state=stopped. there could be latest service state running also for some services. if you remove search state=stopped then you need to add your old eval | eval State =if(match(Message,"running state"),"CLOSED","OPEN")
... View more