I've used Fleetmate. It's good and may be what you are looking for. However, it's completeness is very much dependent on how diligent and accurate the users are. It operates by setting up your trucks and trailers and then you update records. Repairs, fuel, tires, routine work (people may refer to that as "A" service and "B" service, depending on where you go.) It can help automate a lot of things, like knowing your miles per gallon or if there's a problem with tires on trailer that has a lot of blowouts and there's a nice reporting function on the program so you can pull how many miles your fleet did. It very much will associate costs on any scale you choose - from an individual truck to the whole fleet or a group of assets, for any length of time you choose to look at.
Now, here's the kicker: the information you get out of it is only as good as the information you put into it. I've seen people use Fleetmate and forget to enter something (i.e., a fuel purchase, repair, enter an odometer reading incorrectly) and then everything is out of whack. It works almost entirely off of odometer readings and if you miss something or do it wrong, your reports will truly be "garbage in, garbage out." You won't know something is wrong until you look one day and ask, "hey, how come truck # 666 has such a lousy miles per gallon?" or "I thought we just serviced that trailer...how come that tire repair isn't in Fleetmate?"
If I'm not mistaken, Fleet Manager (which is TransPlus's trucking software cousin to Logistics Manager) has a similar method to track your asset maintenance history. Again, it's only as accurate as the information you put into it and I don't think it allows you to cost out repair jobs to average out your maintenance per mile rate. The good people at TransPlus would gladly write the code for a fee, I'm sure.