The lowlands of the Champions League group stage look so benign for Manchester City that a cold night in eastern Ukraine maybe as tough as it gets this side of Christmas.
Guardiola’s side should have scored six times and though the makeshift rearguard had its moments, it emerged unscathed. There was also further evidence of an improved attacking asset. Riyad Mahrez, the night’s outstanding performer, has emerged from a mixed first season to become one of City’s prime attacking threats in the early weeks of this campaign.
City pressed Shakhtar from the outset and Rodri should have done better when De Bruyne’s cross hit the back of his head. Marlos sent a thundering drive flashing past Ederson’s net as Shakhtar countered, but City’s pressure paid off when Gundogan curled a shot onto the post and it bounced into the path of Mahrez, who guided it into the empty net from close range.
Moraes had a gilt-edged chance to equalize from the corner of the six-yard box but his shot hit Ederson in the chest and City punished his wastefulness.
Rodri’s cross-field ball found Mahrez and the Algeria international played in Gundogan, who fired a first-time shot just inside the post with deadly accuracy.
Moraes made a poor attempt to chip Ederson when the City keeper got caught outside his box early in the second half but Raheem Sterling missed an even better chance at the other end, hitting the outside of the post after Sergey Krivtsov gifted him possession 12 yards out.
Jesus made no such mistake when De Bruyne capitalised on sloppy Shakhtar passing and released the Brazilian, who rolled a shot into the bottom-right corner of the net and made certain of his side’s winning start in the Champions League.