// Copyright (c) 2005 DMTF. All rights reserved. // Add UmlPackagePath // qualifier values to CIM Schema. // ================================================================== // CIM_DiagnosticResult // ================================================================== [Deprecated { "CIM_DiagnosticServiceRecord" }, UMLPackagePath ( "CIM::System::Diagnostics" ), Version ( "2.7.0" ), Description ( "When a DiagnosticTest Service is running, test results are " "reported using a DiagnosticResult object, or one of its " "subclasses. A DiagnosticTest may be running because its " "Service is Started or due to an invocation of the RunTest " "method. Diagnostic Results are related to their Test via an " "instance of the DiagnosticResultsForMSE association. \n" "For every running of DiagnosticTest, a new instance of " "DiagnosticResult, or one of it's subclasses should be created.")] class CIM_DiagnosticResult { [Deprecated { "No Value" }, Key, Propagated ( "CIM_DiagnosticTest.CreationClassName" ), Description ( "The scoping Test's CreationClassName."), MaxLen ( 256 )] string DiagnosticCreationClassName; [Deprecated { "No Value" }, Key, Propagated ( "CIM_DiagnosticTest.Name" ), Description ( "The scoping Test's Name."), MaxLen ( 256 )] string DiagnosticName; [Deprecated { "No Value" }, Key, Propagated ( "CIM_DiagnosticTest.SystemCreationClassName" ), Description ( "The scoping Test's SystemCreationClassName."), MaxLen ( 256 )] string DiagSystemCreationClassName; [Deprecated { "No Value" }, Key, Propagated ( "CIM_DiagnosticTest.SystemName" ), Description ( "The scoping Test's SystemName."), MaxLen ( 256 )] string DiagSystemName; [Deprecated { "CIM_DiagnosticRecord.InstanceID" }, Key, Description ( "The Unique identifier for an instance of Diagnostic " "Results."), MaxLen ( 1024 )] string ExecutionID ; [Deprecated { "CIM_LogRecord.MessageTimestamp" }, Description ( "The date and time the result was last updated.")] datetime TimeStamp; [Deprecated { "No Value" }, Description ( "This property is being deprecated. Tests should be grouped " "at the test level, not by the model. /n If this property is " "TRUE, then this DiagnosticResult summarizes the results " "from the execution of a packaged set of DiagnosticTests. " "The Tests in the package can be identified by following the " "DiagnosticResultForTest association to the test and then " "using the DiagnosticTest InPackage aggregation. The " "individual Results can be broken out by instantiating " "DiagnosticResults for the individual lower level tests and " "aggregating into the 'summary' Result using the " "DiagnosticResultInPackage association.")] boolean IsPackage; [Deprecated { "CIM_Job.StartTime" }, Description ( "The date and time when this test started.")] datetime TestStartTime; [Deprecated { "No Value" }, Description ( "The date and time when this test completed.")] datetime TestCompletionTime; [Deprecated { "No Value" }, Description ( "Describes how the test is progressing. For example, if the " "test was discontinued, the TestState will be \"Stopped\" " "(value=5), or if testing is currently executing, TestState " "will be \"In Progress\" (4)."), ValueMap { "0", "1", "2", "3", "4", "5" }, Values { "Unknown", "Other", "Passed", "Failed", "In Progress", "Stopped" }, ModelCorrespondence { "CIM_DiagnosticResult.OtherStateDescription" }] uint16 TestState; [Deprecated { "No Value" }, Description ( "When \"Other\" (value=1) is entered in the TestState " "property, OtherStateDescription can be used to describe the " "test's state."), ModelCorrespondence { "CIM_DiagnosticResult.TestState" }] string OtherStateDescription; [Deprecated { "No Value" }, Description ( "Estimated number of seconds to perform the Diagnostic Test " "indicated by the DiagnosticCreationClassName and " "DiagnosticName properties. After the test has completed, " "the actual elapsed time can be determined by subtracting " "the TestStartTime from the TestCompletionTime. A similar " "property is defined in the association, DiagnosticTest " "ForMSE. The difference between the two properties is that " "the value stored in the association is a generic test " "execution time for the Element and the Test. But, the value " "here (in DiagnosticResult) is the estimated time that this " "instance with the given settings would take to run the " "test. A CIM Consumer can compare this value with the value " "in the association DiagnosticTestForMSE to get an idea what " "impact their settings have on test execution."), Units ( "Seconds" ), ModelCorrespondence { "CIM_DiagnosticTestForMSE.EstimatedTimeOfPerforming" }] uint32 EstimatedTimeOfPerforming; [Deprecated { "CIM_LogRecord.RecordData" }, Description ( "TestResults stores one or more textual results from the " "execution of the DiagnosticTest(s) referenced by the " "DiagnosticCreationClassName and DiagnosticName properties. " "One entry is considered a cell location in the array. Each " "entry is time stamped and contains the following " "information, in the following format: \n" "LogOption|yyymmddhhttssoutc|TestName|message_text \n" "Where: \n" "LogOption = string identical to the LogOption value in " "DiagnosticSetting that was used to enable logging this " "message. \n" "yyyy = year, e.g. 2000 \n" "mm = month (01 - 12) \n" "dd = day (01 - 31) \n" "hh = hour (00 - 24) \n" "tt = minute (00-59) \n" "ss = second (00-59) \n" "o = \"+\" or \"-\" indicating the sign of the UTC " "correction field \n" "utc = offset from UTC (Universal Coordinated Time) in " "minutes \n" "TestName = Internal test name or current internal subtest " "name that sent the message. \n" "Textual message = free form string that is the 'test " "result'."), ArrayType ( "Ordered" )] string TestResults[]; [Deprecated { "CIM_Job.PercentComplete" }, Description ( "The percentage of the test that has executed thus far, if " "the TestState property is set to \"In Progress\" or the " "percentage of the complete test that was executed if the " "TestState property is set to any of the completed states " "(\"Passed\", \"Failed\" or \"Stopped\"). Final results may " "be based on less than 100% coverage due to the parameters " "defined in DiagnosticSetting (such as QuickMode, " "PercentOfTestCoverage or HaltOnError)."), Units ( "Percent" ), MinValue ( 0 ), MaxValue ( 100 )] uint8 PercentComplete; [Deprecated { "CIM_DiagnosticServiceRecord.ErrorCode" }, 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_DiagnosticResult.ErrorCount" }] string ErrorCode[]; [Deprecated { "CIM_DiagnosticServiceRecord.ErrorCount" }, 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_DiagnosticResult.ErrorCode" }] uint32 ErrorCount[]; [Deprecated { "CIM_DiagnosticServiceRecord.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.")] uint32 LoopsFailed; [Deprecated { "CIM_DiagnosticServiceRecord.LoopsPassed" }, 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.")] uint32 LoopsPassed; // --------- Properties below here are copied from ------------------ // --------- DiagnosticSetting ------------------ // Note that the DiagnosticSetting object can be modified at any time, // and the current test settings can be lost. When RunTest starts // execution the settings, which are time sensitive, should be evaluated // and captured. [Deprecated { "CIM_DiagnosticSetting.LogOptions" }, Write, Description ( "Sets the level of warning messages to be logged. If for " "example no warning information is required, the level would " "be set to \"No Warnings\" (value=0). Using \"Missing " "Resources\" (value=1) will cause warnings to be generated " "when required resources or hardware are not found. Setting " "the value to 2, \"Testing Impacts\", results in both " "missing resources and 'test impact' warnings (for example, " "multiple retries required) to be reported."), ValueMap { "0", "1", "2", "3" }, Values { "No Warnings", "Missing Resources", "Testing Impacts", "All Warnings" }] uint16 TestWarningLevel; [Deprecated { "CIM_DiagnosticSetting.LogOptions" }, Write, Description ( "When this flag is true, the diagnostic test will report " "'soft errors'. In this context, a soft error is a message " "from the diagnostic reporting a known defect in the " "hardware or driver configuration, or execution environment. " "Examples are: 'Not enough memory', 'Driver IOCTL not " "implemented', 'Video RAM compare failed during polygon fill " "test (A known defect in the video chipset)', etc.")] boolean ReportSoftErrors; [Deprecated { "CIM_DiagnosticSetting.LogOptions" }, Write, Description ( "When this flag is true, the diagnostic test will report " "'status messages'. In this context, a status message " "indicates that the diagnostic code is at a checkpoint. " "Examples are: \"Completion of phase 1\", \"Complex " "pattern\", etc.")] boolean ReportStatusMessages; [Deprecated { "CIM_DiagnosticSettingRecord.HaltOnError" }, Write, Description ( "When this flag is true, the test will halt after finding " "the first error.")] boolean HaltOnError; [Deprecated { "CIM_DiagnosticSettingRecord.QuickMode" }, Write, Description ( "When this flag is true, the test software should attempt to " "run in an accelerated fashion either by reducing the " "coverage or number of tests performed.")] boolean QuickMode; [Deprecated { "CIM_DiagnosticSettingRecord.PercentOfTestCoverage" }, Write, Description ( "Requests the diagnostic software to reduce test coverage to " "the specified percentage. For example, a hard drive scan " "test could be asked to run at 50%. The most effective way " "to accomplish this is for the test software to scan every " "other track, as opposed to only scanning the first half of " "a drive. It is assumed that the effectiveness of the test " "is impacted proportional to the percentage of testing " "requested. Permissible values for this property range from " "0 to 100. \n" "This property may not be applicable to all tests. If it can " "be set for a test, the value 7 (\"Supports PercentOf " "TestCoverage\") should be entered into the DiagnosticTest's " "Characteristics array."), Units ( "Percent" ), MinValue ( 0 ), MaxValue ( 100 ), ModelCorrespondence { "CIM_DiagnosticTest.Characteristics" }] uint8 PercentOfTestCoverage; };