PHOENIX -- At some point, the Cardinals will lean on their starting pitcher one too many times, and one of the fivesome won't be able to deliver. Until that time comes, it's a fun time to wear the "birds on the bat."

Brad Penny kept up the Cards' sensational run of starting pitching with seven quality innings on Monday night, and his offense gave him just enough help in a 4-2 win against the D-backs at Chase Field. It was the seventh straight game in which a St. Louis starter pitched at least seven innings and allowed two or fewer earned runs. That's the longest such streak by a Cardinals staff since 1967.

"It gives us a chance to click on offense, maybe like we haven't yet," said Matt Holliday, whose resurgence continued with a two-run homer on Monday. "They continue to give us a chance. Scratch out some runs, give 'em a few and we win some games."

Impressively, Penny continued the streak, even though it looked very much in jeopardy early. Penny was not sharp when he started. Stephen Drew singled as the second batter of the game, and back-to-back two-out doubles from Adam LaRoche and Mark Reynolds made it a 2-0 Arizona lead.

Penny chalked it up to "lack of focus," but with the Cardinals' offense not scoring much lately, any kind of early deficit was a bit alarming. So Penny immediately went to work making sure that it wouldn't get any bigger.

He got into some trouble with a single and a walk in the second, but kept the Snakes off the board. And after that, the former Arizona farmhand locked in. Penny allowed a total of two baserunners from the third through the sixth, then dodged one last scare in the seventh.

With men on first and third and one out, Drew came to the plate. Penny fell behind Drew, 3-0, got back to 3-1 and threw Drew a split-finger pitch off the plate. Drew chased it, rolled over it and grounded up the middle. Brendan Ryan fielded the ball, tagged second and threw to retire Drew at first, ending Penny's evening and one of the last serious Arizona threats.

"We were in all kinds of trouble there," manager Tony La Russa said. "[Drew] always hits well against us. Made a great pitch."

With the tie preserved, the Cardinals went about getting Penny a lead. And appropriately, the winning run came home on an error in a well-pitched, if not especially crisply played, game. Colby Rasmus led off the eighth with a double, then took third on Felipe Lopez's sacrifice. Yadier Molina hit a hard chopper to first base, but LaRoche couldn't corral the ball and Rasmus scored. St. Louis threatened to add more when Molina advanced to third on another error, but couldn't get the run home. A Rasmus single in the ninth stretched the lead to 4-2.

Jason Motte and Trever Miller combined to pitch the eighth, and Ryan Franklin closed it out for his fifth save in as many chances. The Cardinals' bullpen has not quite kept up with the starters but has been very strong, posting a 3.11 ERA that ranks fifth in the National League. St. Louis is the only NL team without a blown save this year.

After four innings of frustration against D-backs starter Rodrigo Lopez, it was Holliday who got the Cards on the board when he went deep in the fifth.

"I think it was the right location," Lopez said. "I think it was the right pitch. The ball was a little up in the zone. He's so strong. He muscled up. It wasn't a beautiful thing, but he hit a line drive, and before I turned around, it was over the fence."

The Cardinals improved to 9-4 on the year and have won the first game of each of their five series in 2010.