こんな感じで汎用的に使えるかと思いますがどうでしょうか?
<your search> earliest=-30d@d
[search <your search> earliest=-30d@d
| bucket span=1d _time
| stats first(_time) as time1 by date_month
| eval time2=time1+(3600*24)
| eval string="(_time>=".time1." _time<".time2." date_month=".date_month.")"
| stats values(string) as string
| nomv string
| rex field=string mode=sed "s/\)\s?\(/) OR (/g"
| return $string]
| stats count by date_month date_mday
| eval date=date_month."/".date_mday
| table date count
実行例:
index=_internal sourcetype=splunkd earliest=-30d@d
[search index=_internal sourcetype=splunkd earliest=-30d@d
| bucket span=1d _time
| stats first(_time) as time1 by date_month
| eval time2=time1+(3600*24)
| eval string="(_time>=".time1." _time<".time2." date_month=".date_month.")"
| stats values(string) as string
| nomv string
| rex field=string mode=sed "s/\)\s?\(/) OR (/g"
| return $string]
| stats count by date_month date_mday
| eval date=date_month."/".date_mday
| table date count
2つのearliest部分と、実際に検索したいindex等を指定すれば毎月末のみカウントされます。
注意点として、
your search
で指定されるイベントに必ず月末のイベントが含まれている必要があります。
毎月の最も新しいタイムスタンプのイベントを基準に、その日の24時間分をカウント対象にする検索条件です。
... View more