Gloucester number eight Sione Kalamafoni scored two tries as the Cherry and Whites defeated Sale 23-19 at Kingsholm on Friday.
The first half was fiercely contested, with a try for either side through Rob cook and Nev Edwards.
Two penalties from Billy Twelvetrees and three points from Danny Cipriani gave the home side a 11-8 lead at half-time.
The second half was just as tight. A Kalamafoni brace for Gloucester and two points from Greig Laidlaw sealed the win for the home side.
Edwards scored his second for Sale and Cipriani kicked three points ensure Sale left with a bonus point.
Against a Sale outfit with a notoriously poor away record, it was the Cherry and Whites who opened the scoring in the first three minutes.
After a sustained period of phase building from kick off, the ball went through the hands and Cook went over in the corner to score the home sides first try in 180 minutes of rugby.
But, Sale were quick to hit back. An exquisite kick from Cipriani fooled the Gloucester defence. Edwards pounced on the ball and finished comfortably to level the scores.
The away side took the lead a few minutes later with a penalty from Cipriani following a high tackle from Billy Twelvetrees. A neat up and under from Jonny May caused havoc in the Sale defence.
They scrambled to keep the ball in the windy conditions but conceded a penalty for holding on, which was neatly slotted by Twelvetrees. The Gloucester captain added another three points a few minutes later with a 45-metre penalty in the blustery West Country conditions.
After the break, it was the Sharks who were the first to strike with three points from the boot of Cipriani to tie the scores up at 11-11.
Five minutes into the second half Gloucester's Richard Hibbard was shown yellow for collapsing the maul. Steve Diamond's men were quick to take advantage of the extra man with Edwards grabbing his second try of the match.
Despite their one-man deficit, Gloucester grabbed a try of their own through Kalamafoni.
The Tongan scored his second and Gloucester's third try on the hour mark after 16 phases of play from the home side. Cipriani increased the pressure on Gloucester in the final ten minutes with a penalty to cut the gap to four points. The win for Gloucester sees them climb to 6th.
Tries: Cook, Kalamafoni 2
Pens: Twelvetrees 2
Yellow Card: Hibbard
Tries: Edwards 2
Pens: Cipriani 3
Gloucester: 15 Rob Cook, 14 Charlie Sharples, 13 Bill Meakes, 12 Billy Twelvetrees (c), 11 Jonny May, 10 James Hook, 9 Willi Heinz, 8 Sione Kalamafoni, 7 Matt Kvesic, 6 Ross Moriarty, 5 Jeremy Thrush, 4 Tom Savage, 3 John Afoa, 2 Richard Hibbard, 1 Paddy McAllister.
Replacements: 16 Darren Dawidiuk, 17 Nick Wood, 18 Nicky Thomas, 19 Mariano Galarza, 20 Jacob Rowan, 21 Greig Laidlaw, 22 Henry Trinder, 23 Henry Purdy.
Sale Sharks: 15 Mike Haley, 14 Nev Edwards, 13 Sam James, 12 Sam Tuitupou, 11 Will Addison, 10 Danny Cipriani, 9 Peter Stringer, 8 Josh Beaumont, 7 TJ Ioane, 6 Dan Braid (c), 5 Jonathan Mills, 4 Bryn Evans, 3 Vadim Cobilas, 2 Tommy Taylor, 1 Ross Harrison.
Replacements: 16 Neil Briggs, 17 Eifion Lewis Roberts, 18 Brian Mujati, 19 Andrei Ostrikov, 20 David Seymour, 21 Chris Cusiter, 22 Joe Ford, 23 Mark Jennings.
Referee: JP Doyle
Assistant Referees: Peter Huckle, Paul Dix
TMO: Stuart Terheege