Detecting hard or soft disk errors in Solaris

I am looking for some tips or suggestions in how to do the following.

1) From a Solaris server, I run the command iostat -En and receive output that is similiar to the following which shows your disks along with the cdrom/dvdrom:

c0t2d0 Soft Errors: 0 Hard Errors: 0 Transport Errors: 0
Model: Maxtor 6E040L0 Revision: NAR61590 Serial No: E1FECWNE
Size: 41.11GB <41110142976 bytes>
Media Error: 0 Device Not Ready: 0 No Device: 0 Recoverable: 0
Illegal Request: 0
c0t0d0 Soft Errors: 0 Hard Errors: 0 Transport Errors: 0
Model: WDC WD200BB-75DE Revision: 05.03E05 Serial No: WD-WMAFD1500835
Size: 20.00GB <20000000000 bytes>
Media Error: 0 Device Not Ready: 0 No Device: 0 Recoverable: 0
Illegal Request: 0
c0t1d0 Soft Errors: 2 Hard Errors: 0 Transport Errors: 1
Vendor: PIONEER Product: 12X DVD-ROM Revision: 1.16 Serial No:
Size: 0.00GB <0 bytes>
Media Error: 0 Device Not Ready: 0 No Device: 0 Recoverable: 0
Illegal Request: 2 Predictive Failure Analysis: 0

2) My question is this, how can I parse out the DVD-ROM drive and then with the two internal disks, I want to check the: "Soft Errors", "Hard Errors" and "Transport Error" fields for any number other than zero which would indicate a need for a fsck of the drive, drive replacement, etc.

3) If possible, I would also want to add the funtionality of excluding any SAN attached storage which may or may not be present as I am not concerned with the SAN drives.

Any help would be greatly appreciated.

Double-post. Reposted in the Solaris forum.