When should a zerg NOT be droning?
Solution 1:
Zerg's main advantage in StarCraft is that they can produce workers at absurd rates compared to Protoss or Terran players. While doing so prevents them from building other units, the goal of most Zerg players is to secure an economic advantage and then JUST BARELY hold off enemy attacks by producing last minute combat units. This allows them to hold a slight lead for the entire game and then finish it with the typical Zerg lategame army: Brood Lord/Infestor/Roach/Queen.
There are two scenarios where you stop droning:
There's something your opponent could be doing that would cause you to lose to his next attack. Hopefully you've scouted this, but often you have to just assume he's planning a soon-to-hit attacking force due to the information that you have been able to scout. If you drone during this time and have guessed wrong, there's a good chance you'll lose the game. Most Zerg players cut corners slightly and continuously scout what they can of the opponent's base and his exit ramp with Zerglings and Overlords. When they see their opponent pushing out or amassing an army, they cut Droning completely.
Alternatively, you should stop droning after you hit about 70-80 drones in a typical game. Some top players prefer to peak at 90-100 Drones before building dozens of Spine/Spore Crawlers and then beginning a lategame Zerg push. This mastery of the endgame is probably pretty foreign to newer players, though, so just stick to a hard limit of about 80 and you should be well off.
Finally, worth noting is the Stephano method for Zerg, which plays very differently but has caught on due to his success. He focuses more on a balanced composition (building Drones at about the rate Terran or Protoss players would, rather than all at once) and takes the offensive in early-midgame with Roach attacks to ensure that his opponents are not playing greedy.