Thanks,
I used @SloshBurch's and with some mods got it to work.
(thanks somesoni1, but did not try yours)
Agree, don't like joins/appends, but that came closest to describe problem of my several initial attempts. . .
I did have to modify it, so for others that might come across this, I could not use the raw="*string*" . Those wildcards would not work.
SAME structure, but had to use like instead for string comparison.
This search works fine now:
index=prod_stuff source="good_stuff*"
| bucket _time span=1s
| stats count as totalCount, count(eval((like(_raw,"%ERROR%") OR like(_raw,"%string1%") OR like(_raw,"%string2%")) AND NOT like(_raw,"%string3%") AND NOT like(_raw,"%string4%") AND NOT like(_raw,"%string5%") AND NOT like(_raw,"%string6%"))) as totalErrors by _time, host
| eval errorRate=round(totalErrors/totalCount*100,2)
| xyseries _time,host,errorRate
... View more