Three years and $30 million, ESPN reports. As a blogger whose only real connection to the players is watching them on the field, I've long liked Bradley a lot more than a lot of people who've had to put up with him as an actual human being, so naturally I think this is a really good deal for the Cubs. Bradley isn't old, put up a .436 OBP last year, and has generally hit like the crazy person he is since being traded from Oakland to San Diego in the middle of the 2007 season.
He's a big-time injury worry, but his good contact ability and solid strike zone judgment both bode well. Cliff Floyd was a pretty similar player in terms of his age, hitting, and injury problems when he signed with the Mets before the 2003 season; he had trouble staying on the field in New York, but for the first few years, he was good when he played. I wouldn't expect Bradley to continue to hit like he did in 2008, but he should still be very effective for 120 games or so each year.