秋,赤狄入侵晉國,包圍懷地(晉地,今河南武陟西南),到達邢丘(晉地,今河南溫縣東)。
晉成公因此想要討伐赤狄,中行桓子(荀林父,因曾擔任中行將,以官為氏)卻表示,讓他們危害他們的民眾,來使他們的惡行滿溢,就可以將他們徹底消滅了。《周書》說‘殪戎殷(徹底消滅大國殷商)’說的就是這個意思。
晉成公聽從了他的意見。
冬,楚國人攻打鄭國,鄭襄公逃到晉國,直到鄭國講和,楚國人才回去。
晉成公五年,即公元前六零二年,春,魯國與衛國結盟,同時商議與晉國會盟。
赤狄攻打晉國,到達向陰,搶先收走了當地的谷子。
鄭國與晉國講和。
冬,晉成公與魯宣公、宋文公、衛成公、鄭襄公、曹文公在黑壤會盟,王叔桓公與會,商討如何處理那些不順服晉國的諸侯。
晉成公即位的時候,魯宣公沒有前來朝見,也沒有派使者前來聘問。於是黑壤之盟,諸侯結盟之時,晉國人沒有讓魯宣公參加。甚至給晉國人送了賄賂之後,才回到魯國。
晉成公六年,即公元前六零一年,春,白狄與晉國講和。
夏,白狄與秦國一起攻打晉國。
晉國人抓住了秦國的一個間諜,將他殺死在了絳城的街市上,可六天之後,這個人卻複生了。
晉國大夫胥克有心志惑亂之症,此時郤缺為晉國正卿。
秋,晉國廢除了胥克的職位,由趙朔擔任下軍佐。
冬,陳國與晉國講和。
楚國的軍隊便進攻陳國,直到陳國求和才離開。
這一年,晉國趙盾去世。
楚國攻打舒廖,舒廖滅亡。
晉成公七年,即公元前六零零年,秋,晉成公、宋文公、衛成公、鄭襄公、曹文公在扈地會見,商討如何處理那些不順服晉國的諸侯。
陳靈公沒有參加,晉國荀林父便率領諸侯聯軍攻打陳國。
晉成公在扈地去世,荀林父才從陳國撤兵。
楚莊王率軍攻打鄭國,晉郤缺率軍救援鄭國。
鄭國國君鄭襄公在柳棼(鄭地)率軍擊敗楚莊王。
晉成公去世之後,他的的兒子公子據繼位,是為晉景公。