The deal with the 34-year-old left-hander, which had been agreed to on Dec. 28, allows him to earn an additional $400,000 in performances.
Gonzalez had a 3.03 ERA and no record in 47 games last year with Washington, holding left-handed hitters to a .179 batting average. He has a 17-21 record with a 2.94 ERA and 56 saves with Pittsburgh (2003-06), Atlanta (2007-09), Baltimore (2010-11), Texas (2011) and Washington (2012).
In addition to his base salary, Gonzalez would earn $50,000 for 25 games finished, $75,000 each for 30 and 35, and $100,000 apiece for 40 and 50.
To clear a roster spot, Milwaukee designated right-hander Arcenio Leon for assignment.