// Copyright (c) 2005 DMTF. All rights reserved. [Version ( "2.11.0" ), UMLPackagePath ( "CIM::System::Diagnostics" ), Description ( "A snapshot of the properties in the DiagnosticSetting instance " "that was used when the Diagnostic was run." )] class CIM_DiagnosticSettingRecord : CIM_DiagnosticRecord { [Description ( "When this flag is true, the test will halt after finding " "the first error." )] boolean HaltOnError; [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; [Description ( "The requested percentage of coverage for the diagnostic " "service. For example, a hard drive scan test could be " "asked to run at 50%. Permissible values for this " "property range from 0 to 100." ), Units ( "Percent" ), MinValue ( 0 ), MaxValue ( 100 )] uint8 PercentOfTestCoverage; [Description ( "Array entries contain parameters corresponding to " "entries in the LoopControl array, limiting the number of " "times a test should be repeated with a single invocation " "of RunTest by a CIM client." ), ArrayType ( "Indexed" )] string LoopControlParameter[]; [Description ( "LoopControl, used in conjunction with " "LoopControlParameter, sets one or more loop control " "mechanisms that limits the number of times a test should " "be repeated with a single invocation of RunTest by a CIM " "client. There is an array-positional correspondence " "between LoopControl entries & LoopControlParameter " "entries. The entries in these coupled arrays of loop " "controls can be used in a logical OR fashion to achieve " "the desired loop control. For example, if a client wants " "to loop a test 1000 times, but quit if a timer runs out, " "it could set both controls into the LoopControl array as " "two separate entries in each array. The looping test " "will terminate when the first of the two Ored conditions " "are met. \n" "A brief description for each loop control can be found " "in the description of DiagnosticSetting.LoopControl." ), ValueMap { "0", "1", "2", "3", "4", "5" }, Values { "Unknown", "Other", "Continuous", "Count", "Timer", "Error Count" }, ArrayType ( "Indexed" )] uint16 LoopControl[]; [Description ( "Provides additional information for LoopControl when its " "value is set to 1 (\'Other\')." ), ArrayType ( "Indexed" )] string OtherLoopControlDescriptions[]; [Description ( "The desired length of time to persist the messages that " "result from execution of a diagnostic service. Here is a " "summary of the choices and behaviors for different " "ResultPersistence values: \n" "0 = \"No Persistence\": \n" "Setting the timer to zero tells the provider not to " "persist the diagnostic result. The diagnostic " "information is only available while the diagnostic is " "executing or at its conclusion. \n" "Value > 0 and < 0xFFFFFFFF = \"Persist With TimeOut\": \n" "Setting the ResultPersistenceOption to a integer will " "cause the DiagnosticResult to be persisted for that " "number of seconds. At the end of that time, the " "DiagnosticResult may be deleted by the diagnostic " "service provider. \n" "0xFFFFFFFF = \"Persist Forever\": \n" "By setting the timeout value to the very large value, " "0xFFFFFFFF, the provider shall persist results forever. " "In this case, the client MUST bear the responsibility " "for deleting them." ), Units ( "Seconds" )] uint32 ResultPersistence; [Description ( "The LogOptions property lists the log options that were " "requested for the Diagnostic Service. A brief summary of " "the various log options can be found in " "CIM_DiagnosticSetting.LogOptions." ), ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "0x8000" }, Values { "Unknown", "Other", "Results", "Subtests", "Actions", "Warnings", "Status", "Device Errors", "Service Errors", "Setting Data", "Statistics", "Hardware Configuration", "Software Configuration", "References", "Debug", "No Log Options" }, ArrayType ( "Indexed" )] uint16 LogOptions[]; [Description ( "Provides additional information regarding the types of " "test messages that are logged when the property " "LogOptions includes the value 1 (\"Other\")." )] string OtherLogOptionsDescriptions[]; [Description ( "The LogStorage setting property indicates which types of " "supported storage should be used by the Diagnostic " "Service for logging of the data specified in LogOptions. \n" "The values are: \n" "\"DiagnosticRecordLog\" (Value = 2): Use the " "DiagnosticRecordLog and DiagnosticRecord classes. \n" "\"MessageLog\" (Value = 4): Use the MessageLog class and " "its methods. \n" "\"File\" (Value = 5): Write data to a file." ), ValueMap { "0", "1", "2", "3", "4" }, Values { "Unknown", "Other", "DiagnosticRecordLog", "MessageLog", "File" }, ArrayType ( "Indexed" )] uint16 LogStorage[]; [Description ( "This property provides additional information for " "LogStorage when the corresponding value is set to 1 " "(\"Other\")." ), ArrayType ( "Indexed" )] string OtherLogStorageDescriptions[]; [Description ( "A client may want to specify the volume or detail of " "information logged by a diagnostic service. This metric " "is applied to a corresponding logging option, acting as " "a qualifier on its description. Three levels of " "verbosity are defined as follows: \n" "* \"Minimum\" (value=2): Specified if the least amount " "of information is desired; for example, Pass or Fail. \n" "* \"Standard\" (value=3): This is the standard level of " "messaging provided by the service. It is the form most " "likely to be used if no verbosity value is specified " "(default). \n" "* \"Full\" (value=4): Specified when all information, " "regardless of size, is desired. \n" "Verbosity may not apply to all LogOptions values, in " "which case the default VerbosityLevel of \"Standard\" " "SHOULD be used." ), ValueMap { "2", "3", "4" }, Values { "Minimum", "Standard", "Full" }, ArrayType ( "Indexed" )] uint16 VerbosityLevel[]; };