Pop out your battery and run down to the Autozone store. They'll charge your battery for free; after it's charged, they can check the voltage output. At room temperature, the battery should put out at least 9.6 volts or better; anything less indicates a battery failure. Autozone sells an inexpensive replacement battery (Duralast 49DL $70), but for all your car electronics, the Optima as recommended by WolfX5 is probably the best way to go. Autozone also carries Optima, but Costco has the cheapest price.
http://www.xoutpost.com/articles/x5/g...light=Duralast
The next time you leave the country for 3 months, just leave me your X5. I promise the battery will never fully discharge...