An apparatus and method for monitoring performance of a storage device. Preferably, the apparatus is embodied in computer readable program code. The apparatus and method may intercept communications between a computer system and the storage device, wherein the communications are compared to a threshold value and/or a predicted failure of the storage device. The apparatus and method may also respond to a decline in the performance of the storage device based on the analyzed communications, and preferably prior to the predicted failure thereof.