As i said, always start from basics when dealing with a problem, then work your way up.
when was the last time you checked its electrolyte level?? Looks like you are being lazy in routine care of your bike now.
GS deserves at least this much care every 2000Km.
-Engine Oil Change,
-Air Filter Cleaning,
-Fuel Strainer Cup Cleaning, Fuel Filter Checking (Replace if too dirty)
-Drive Chain Cleaning and Lubrication,
-Battery Water Checking, Terminal tightening/lubrication
-Spark Plug Checking (Cleaning/Adjusting the gap)
-Valve Clearance Checking,
-Exhaust Pipe and Muffler Bolts Checking, Chasis Nut Bolts Checking