Data ONTAP contains an implementation of the Java Virtual Machine. Our approach to addressing the issue of extensibility is to write most of the auto-diagnosis system in Java. This provides us complete flexibility to change the auto-diagnosis logic in a new version, and support older versions of ONTAP. In a Java scenario, the auto-diagnosis logic ships as a collection of Java classes that reside on the root file system of the filer.
Note that the current version of the auto-diagnosis system is in C; we plan to use Java in the next major version of ONTAP. As mentioned earlier, a file containing constant and threshold values provides limited extensibility in the current implementation.