OTTAWA -- The Ottawa Senators were ready to get some new streaks started.
Brian Elliott made 27 saves in his 10th straight start for the Senators, who won their 12th in 13 games. Ottawa lost 5-0 in Toronto on Saturday to end its team-record winning streak at 11.
"We were coming off a terrible game and knew these guys were going to be ready tonight, so we came out pretty ready and it was nice to get the win," said Spezza, whose six-game goal streak ended Saturday.
Spezza, who assisted on Alex Kovalev's power-play goal in the first, got his 13th of the season to give the Senators their first lead 16:37 into the second. Jarkko Ruutu scored midway through the middle period to draw Ottawa even for the second time in the game.
"It's obviously nice to be able to battle back from behind on a very good defensive team with a great goalie," Senators captain Daniel Alfredsson said. "The effort today got better and better as the game went on and that's what we wanted, a good response, and I think we got it and obviously the two points is a result of that."
Elliott, who had won nine starts in a row during the streak to break his own team record, came up with two big stops with 18.7 seconds remaining as Calgary pressed for the tying goal with Miikka Kiprusoff pulled for an extra attacker despite a penalty to Flames defenseman Jay Bouwmeester.
Ottawa, which hasn't lost at Scotiabank Place in a month, won its season-high sixth in a row at home since Jan. 9, when it lost 3-0 to Florida in the midst of a five-game skid that preceded its record winning streak.
The Senators, who have three games remaining before the Olympic break, have 72 points in 60 games, tying Northeast Division leader Buffalo, which has played two less games.
"We've done a tremendous job of putting ourselves in a great position come the last stretch after the break," Alfredsson said. "We should be proud of what we've done here so far and hopefully we can carry on those last three games before the break and come back with a good mindset."
"I'm not happy at all tonight," Flames coach Brent Sutter said. "That game was there for us to get some points here tonight and we just didn't play a good enough game after the first 28 minutes to expect to win."
Kiprusoff stopped 28 shots in his 11th straight start for the Flames, including a sensational lunging stick save in the second to deny Jonathan Cheechoo's wraparound attempt moments before Ruutu scored at 9:36 to tie it at 2.
Spezza, who had a six-game goal streak snapped Saturday, put Ottawa ahead with 3:23 left in the second when he fired into an open left side after Cheechoo's pass deflected to him off Flames defenseman Adam Pardy's stick.
Elliott put himself in an awkward position when he came out to play a loose puck midway through the first. The Senators goalie beat Calgary's Ales Kotalik to the puck, but flipped it directly to Flames center Daymond Langkow and had to backpedal toward the left corner to protect his net.
Hagman gave Calgary its first of two one-goal leads with his 21st goal 16:51 in. The Swedish left wing moved into the slot after receiving Iginla's feed to drive a low slap shot past Elliott for his first goal in five games with the Flames since he was acquired along with Stajan, Jamal Mayers and Ian White in the Jan. 31 trade that sent Dion Phaneuf to Toronto.
Kovalev drew Ottawa even at 1 just 19 seconds later when he got credit for his 15th goal after his shot went in off Langkow's skate at 17:10, just 9 seconds after White was penalized for delay of game.
Iginla got his second assist when Stajan, who assisted on Hagman's goal, added his 18th goal 3:18 into the second to restore Calgary's one-goal lead at 2-1.
Kiprusoff lunged and stuck out the paddle of his goalie stick to stop Cheechoo's wraparound attempt just over 8 minutes into the second. A brief video review confirmed that the puck didn't cross the goal line.
Flames LW Eric Nystrom has gone 42 games without scoring a goal. Nystrom, who has 11 points in 60 games, has been held to four assists since he scored his fifth goal of the season in a 5-2 win in Toronto on Nov. 12. ... Cheechoo played his 500th game.