try this example and tell if it help you
index=_internal |timechart count by date_month where (date_mday>=15 and date_mday=<31)
This is what I've tried and seems to be working fine but I've only got two months worth of data so ...
index=_internal | eval mytime = if(date_mday<=15, _time, _time+(15*24*60*60)) | bucket mytime span=1mon | eval month = strftime(mytime, "%B") | chart count over mytime by month | eval mytime = "Mid-" . strftime(mytime, "%B")
try like :
your_base_search ... date_mday>=15| timechart span=1months count
index = internal datemday>=15| timechart span=1months count