DETROIT — James Shields finished an awful August on a slightly better note.

Then the game slipped away from the Chicago bullpen.

Jarrod Saltalamacchia’s two-run homer in the eighth inning lifted the Detroit Tigers to a 4-3 victory over the White Sox on Monday night. Shields allowed two runs and six hits in six innings, but Chicago couldn’t hold a one-run lead for him.

“It’s tough, because James did a really nice job,” manager Robin Ventura said. “He was bobbing and weaving against a lot of traffic, but he kept making huge pitches when he needed them.”

Detroit trailed 3-2 after a solo homer in the seventh by Chicago’s Tyler Saladino, but Saltalamacchia’s towering drive off Nate Jones (5-3) put the Tigers ahead.

Justin Upton also went deep for the Tigers, who pulled within a game of Baltimore for the American League’s second wild card.

Justin Wilson (4-4) got the win in relief, and Francisco Rodriguez pitched a perfect ninth for his 37th save in 40 chances.

Saladino drove in all three Chicago runs.

Shields was 0-4 with a 13.95 ERA in five August starts coming into Monday’s game, but the Tigers didn’t do much against him. Miguel Cabrera hit a sacrifice fly in the third, but Saladino’s two-run single put the White Sox ahead the following inning.

“The first couple innings I was a little erratic, but I thought I settled down and was able to pound the strike zone,” Shields said. “I’ve really done that in my last few starts, but tonight I think I had more luck.”

Upton tied it in the sixth with a solo home run. Saladino led off the seventh with his eighth homer of the season.

Chicago used three relievers to get through the seventh, and Jones came on in the eighth. He walked Martinez and Saltalamacchia went deep one out later.

“You just have to tip your hat because Nate has been as consistent as anyone out there,” Ventura said. “Salty’s gotten us a few times before.”

Saltalamacchia’s drive was so high in the air, it was fair to doubt whether it had the right trajectory to clear the wall in right-center field.

“I saw the outfielders kind of meeting right at that little Bermuda Triangle out there, so I got a little scared,” Saltalamacchia said. “When I didn’t see them catch it, I was definitely happy.”

Detroit starter Matt Boyd allowed two runs and seven hits in four-plus innings.

MILESTONES

Rodriguez earned his 423rd save, moving one ahead of Billy Wagner for fifth on the career list. Cabrera’s third-inning RBI gave him 1,003 with the Tigers, tying Alan Trammell for 10th in team history.

STREAK

Chicago’s Jose Abreu had a single and a double and has reached base in 25 consecutive games.

ROTATION

Tigers manager Brad Ausmus said before the game rookie RHP Michael Fulmer would likely start Saturday at Kansas City. That would give Fulmer six days’ rest between starts as Detroit tries to manage his workload.

TRAINER’S ROOM

White Sox: CF Adam Eaton was in the lineup after leaving Sunday’s game because of a bruised forearm. He went 0 for 4 with a walk.

Tigers: RHP Mike Pelfrey (lower back strain) allowed a run and three hits in three innings in a rehab start for Triple-A Toledo at Indianapolis. He struck out two. … CF Cameron Maybin left in the fifth with a bruised left thumb.

UP NEXT

White Sox: RHP Anthony Ranaudo (1-1) starts Tuesday night against the Tigers. He allowed six runs in 5 1/3 innings in his most recent start, Thursday against Seattle.

Tigers: LHP Daniel Norris (2-2) takes the mound. He allowed two runs in 6 1/3 innings Thursday at Minnesota.


Follow Noah Trister at www.Twitter.com/noahtrister