// Copyright (c) 2005 DMTF. All rights reserved. [Version ( "2.10.0" ), UMLPackagePath ( "CIM::System::Diagnostics" ), Description ( "While a DiagnosticService is running, data generated by the " "service may be recorded in DiagnosticServiceRecord objects. A " "DiagnosticServiceRecord is related to its Log via an instance " "of the LogManagesRecord aggregation class." )] class CIM_DiagnosticServiceRecord : CIM_DiagnosticRecord { [Description ( "If applicable, this string should contain one or more " "vendor specific error codes that the diagnostic service " "detected. These error codes may be used by the vendor " "for variety of purposes such as: fault data base " "indexing, field service trouble ticketing, product " "quality tracking, part failure history, etc. Since these " "codes are for vendor purposes they may assume any form. " "Details on suggested use cases will be left to white " "papers. The array of error codes has model " "correspondence with an ErrorCount array so the number of " "errors reported can be analyzed by individual error " "code." ), ArrayType ( "Indexed" ), ModelCorrespondence { "CIM_DiagnosticServiceRecord.ErrorCount" }] string ErrorCode[]; [Description ( "Since some tests may detect transient and correctable " "errors such as a network diagnostic or memory test, an " "error count is useful to indicate the severity of the " "failure. This field contains an integer value of the " "number of errors detected by the test. The ErrorCount is " "an array with model correspondence to ErrorCode so that " "the test can report an ErrorCount on each type of error " "encountered. It is recommended that hard errors and " "correctable or recoverable errors be given different " "codes so that clients with knowledge of the error codes " "can evaluate correctable, recoverable, and hard errors " "independently." ), ArrayType ( "Indexed" ), ModelCorrespondence { "CIM_DiagnosticServiceRecord.ErrorCode" }] uint32 ErrorCount[]; [Description ( "Since some tests may be looped, it is useful to report " "how many iterations passed and failed. This is relevant " "in analyzing transitory failures. For example, if all " "the errors occurred in just one of 100 iterations, the " "device may be viewed as OK or marginal, to be monitored " "further rather then failed. Note: LoopsPassed & " "LoopsFailed should add up to the loops completed. \n" "A value for this property would likely be reported with " "a DiagnosticServiceRecord.RecordType value = \"Results\", " "which contains a result covering all iterations of a " "looped service." )] uint32 LoopsFailed; [Description ( "Since some tests may be looped, it is useful to report " "how many iterations passed and failed. This is relevant " "in analyzing transitory failures. For example if all the " "errors occurred in just one of 100 iterations, the " "device may be viewed as OK or marginal, to be monitored " "further rather then failed. Note: LoopsPassed & " "LoopsFailed should add up to the loops completed. \n" "A value for this property would likely be reported with " "a DiagnosticServiceRecord.RecordType value = \"Results\", " "which contains a result covering all iterations of a " "looped service." )] uint32 LoopsPassed; };