Arsenal were not at their free-flowing best against Sunderland, but still produced a match-winning performance that moved them up to second in the Barclays Premier League.
Olivier Giroud had scored an own goal on the stroke of half-time to cancel out Joel Campbell's opener, but the Frenchman went on to convert Aaron Ramsey's cross to notch his 10th of the season before the Welshman scored late on for a 3-1 win.
Mesut Ozil was again a joy to watch, his displays all the more important for manager Arsene Wenger with Alexis Sanchez injured, but other than that the Gunners were fairly average.
The Germany midfielder lay on a beautiful pass for Campbell to put the hosts ahead and continued to torment Sam Allardyce's side all afternoon.
Sunderland played their part and actually missed a number of gilt-edged chances to take something back to the north-east, having won their last two leading into this contest.
They should have opened the scoring as they caught Arsenal on the break and Duncan Watmore fed Fabio Borini only for the former Liverpool man to shoot straight at Petr Cech.
Cech was forced into another smart save as Arsenal failed to clear a Watmore cross and Mathieu Flamini's inadvertent deflection towards goal was pushed away by his team-mate.
The hosts broke through just over 10 minutes before the break as Ozil produced a 12th assist in 14 league games, angling an inch-perfect pass into the path of Campbell, who made no mistake in finishing past Costel Pantilimon.
The Black Cats had done well in the opening half and were rewarded with a fortuitous equaliser on the stroke of half-time.
Laurent Koscielny was booked for a foul on the busy Watmore and Yann M'Vila's resulting free-kick missed two Sunderland players at the near post but flashed past Cech after hitting the unwitting Giroud.
There was still time for Ramsey to slam an effort into the side-netting after he was picked out by Nacho Monreal.
After the break, Watmore broke out and fed Fletcher, whose low shot was turned behind by Cech and, from the resulting corner, the Czech goalkeeper again kept out Fletcher's close-range effort from Ola Toivonen's flick-on.
But, as England forward Theo Walcott prepared to come on, Giroud put the Gunners back in front as he stooped to head home Ramsey's cross.
For the first time in the game Arsenal were in total control and Giroud went close to adding a third but DeAndre Yedlin was this time able to clear his header off the line.
Ozil's mastery with the ball again opened up the Sunderland defence but Ramsey could not convert with an acrobatic finish.
Sunderland were still in it, though, and Watmore should have done much better when he beat the offside trap before hitting a tame shot at Cech before Patrick van Aanholt ballooned over late on.
But it was Ramsey who struck in stoppage time to secure the three points and set Arsenal up nicely for their pivotal Champions League tie with Olympiacos on Wednesday.