The phrase "be on a roll" means to be experiencing a period of success or good luck. There are many alternative expressions that can be used in place of this phrase, such as "on a winning streak", "in the zone", "riding high", "having a run of good fortune", or "on a hot streak". These phrases all convey the same idea of experiencing a period of success or good luck. It's important to choose the right phrase to fit the context of the situation, but any of these synonymous phrases will work if you want to express someone's streak of good luck or success.