I use RingoLog
After start bot go to plugins tab, click settings.
Can set for hours, level, gold.
For me say I want to get 1 level. And should take X amount of hours. I will set it for that level and give it 1 hour more also. That way if bot gets stuck, does something stupid, it will log off at set time of hour since it will never reach the level.
Like on profiles that change zones when ding, had one that got confused and spent 4 hours trying to cross a bridge. So I learn to set to log when dings and just move him myself when I get back on.