I don't know of a way to roll logs based on size, but you could roll them based on time (e.g. via crontab) by issuing a proper "kill" command to the sm_server (or sm_adapter or any other SMARTS daemon) process. It interprets that as a trigger to roll the log (e.g. move domain-a.log to domain-a.log1, and so on).
I suggest you test it in a non production environment. It's either "kill -HUP" or "kill -USR1".
You could also wrap this in a custom script that checks the log size and then issue the command above at the right time.