In this article:
General Information
-
These codes correspond to the fields present in the following tables:
-
D2_patch_deployment_result / U2_patch_deployment_result
-
D2_discovery_status / U2_discovery_status
-
D2_patching_metrics / U2_patching_metrics
-
D2_patching_status / U2_patching_status.
-
-
The tables prefixed with 'U' contain the real-time, unprocessed data, while the tables prefixed with 'D' store the processed data. Periodically, data is transferred from the unprocessed table to the processed table, and the corresponding rows are removed from the unprocessed table.
-
When performing queries on any of the status tables, it is recommended to apply a filter that excludes results where the delete_timestamp is not NULL, in order to obtain current data.
Deployment Operation
Present in: D2_patch_deployment_result, U2_patch_deployment_result :: operation
- 0: None
- 1: Install
- 2: Rollback
- 4: Uninstall
- 8: Add Optional Install
- 16: Remove Optional Install
- 32: Add Optional Uninstall
- 64: Remove Optional Uninstall
Deployment Operation Status
Present in: D2_patch_deployment_result, U2_patch_deployment_result :: deployment_operation_status
- 0: Non Status
- 1: Deployment Succeeded
- 2: Deployment Failed
- 3: Deployment Cancelled
Discovery State
Present in: D2_discovery_status, U2_discovery_status :: discovery_state
- 0: Installed
- 1: Not Installed
- 5: Scan Failure
Current State
Present in: D2_patching_status, U2_patching_status :: current_state
- 0: Installed
- 2: Not Applicable
- 3: Outdated
- 4: Applicable
- 5: Scan Failure
- 6: Installation In Progress
- 7: Uninstallation In Progress
- 8: Rollback In Progress
- 9: Outdated, Excluded by Exception
- 10: Applicable, Excluded by Exception
Desired State
Present in: D2_patching_status, U2_patching_status :: desired_state
Desired State is a byte value stored as a tinyint integer in SQL. Each bit within the byte translates to a different attribute of the desired state. This is shown below:
- Bit 7: Active or Not
- 0 = inactive
- 1 = active
- Bits 6 and 5: Consistency
- 00 (0) = consistent
- 01 (1) = inconsistent
- 10 (2) = transitioning
- 11 (3) = can't be determined
- Bits 4 and 3: Urgency
- 00 (0) = low
- 01 (1) = normal
- 10 (2) = high
- 11 (3) = critical
- Bits 2, 1, 0: Desired State
- 000 (0) = no preference
- 001 (1) = optional install
- 010 (2) = mandatory install
- 011 (3) = do not install
- 100 (4) = rollback
- 101 (5) = uninstall
To calculate these values, the following queries can be used in MS SQL:
SET @active = (@value & 128) / 128;
SET @consistency = (@value & 96) / 32;
SET @urgency = (@value & 24) / 8;
SET @desired_state = @value & 7;
As an example, to get the Urgency value from the desired_state column of U2_patching_status, the following query can be used:
SELECT ([desired_state] & 24)/8 AS Urgency FROM U2_patching_status
Transition State
Present in: D2_patching_status, U2_patching_status :: transition_state
Transition State is a set of 3 byte values stored as an int in SQL. Each byte translates to a different attribute of the transition state. This is shown below:
- Byte 0: Needed Software Deployment Operation
- 0: None
- 1: Install
- 2: Rollback
- 4: Uninstall
- 8: Add Optional Install
- 16: Remove Optional Install
- 32: Add Optional Uninstall
- 64: Remove Optional Uninstall
- Byte 1: Software Deployment Operation In Progress
- Same as above
- Byte 2: Current Software Deployment Operation Status
- 0: No Status
- 1: Deployment Succeeded
- 2: Deployment Failed
- 3: Deployment Cancelled
- 11: Installable Rule Returned Not-Installable Result
- 12: Performing Prerequisite Installation
- 13: Performing Superseded Uninstallation
- 14: Performing Pre-follow-up Installation
- 15: Performing Follow-up Installation
- 16: Performing Rollback Uninstallation
- 17: Performing Rollback Installation of Previous Version
- 18: Performing Deployment of Another Patch for this Product
- 19: Performing Another Operation for this Patch
- 20: Deployment Cancelled
- 21: Deployment Paused
- 22: Deployment Resumed
- 23: Prerequisite Installation Failed
- 24: Superseded Uninstallation Failed
- 25: Rollback Uninstallation Failed
- 26: Rollback Uninstallation of Previous Version Failed
- 27: Pre-follow-up Installation Failed
- 28: Follow-up Installation Failed
- 29: Too Many Previous Failed Attempts
- 30: Superseding Install is Already Running
- 31: Optional Install Added
- 32: Optional Install Removed
- 33: Optional Uninstall Added
- 34: Optional Uninstall Removed
- 35: Deployment was Interrupted by System Reboot
- 36: Waiting on Retry Delay
- 41: Installer Busy
- 42: Installation Started
- 43: Running Extended Pre-Installation Actions
- 44: Running Pre-Installation Actions
- 45: Running Installation Actions
- 46: Running Post-Installation Actions
- 47: Running Extended Post-Installation Actions
- 48: Installation Timed Out
- 49: Installation Succeeded
- 50: Installation Succeeded with Reboot Pending
- 51: Installation Failed
- 61: Uninstallation Started
- 62: Running Extended Pre-Uninstallation Actions
- 63: Running Pre-Uninstallation Actions
- 64: Running Uninstallation Actions
- 65: Running Post-Uninstallation Actions
- 66: Running Extended Post-Uninstallation Actions
- 67: Uninstallation Timed Out
- 68: Uninstallation Succeeded
- 69: Uninstallation Succeeded with Reboot Pending
- 70: Uninstallation Failed
- 81: Waiting for Disk Space to Free Up
- 82: Download In Progress
- 83: Content Download Completed, but not Unpacked Yet
- 84: Content Download Completed, and Unpacked
- 85: Content Download Failed
- 86: Content Unpacking Failed
- 91: Waiting for Maintenance Window
- 101: Pre-Install Reboot Pending
- 102: Post-Install Reboot Pending
- 103: Pre-Uninstall Reboot Pending
- 104: Post-Uninstall Reboot Pending
- 105: System Rebooted
- 111: Waiting for Interfering Applications to Close
- 112: Waiting for User Logon
- 113: Waiting for User Logoff
- 114: Waiting for Internet Connection
- 115: Waiting for User Actions
To calculate these values, the following queries can be used in MS SQL:
SET @NeededOperation = (@value & 255);
SET @OperationInProgress = (@value / 256) & 255;
SET @OperationStatus = (@value / 65536) & 255;
As an example, to get the OperationStatus value from the transition_state column of U2_patching_status, the following query can be used:
SELECT (transition_state / 65536) & 255 AS OperationStatus FROM U2_patching_status
Metric ID
Present in: D2_patching_metrics, U2_patching_metrics :: metric_id
Metric ID is a byte value stored as a tinyint integer in SQL. Each bit within the byte translates to a different attribute of the Metric ID. This is shown below:
- Bits 7 and 6: Patching Metric Type
- 0 = Per-Machine
- 1 = Per-Product
- 2 = Per-Patch
- Bits 5 and 4: Reserved
- Bits 3, 2, 1, 0: Metric ID
To calculate these values, the following queries can be used in MS SQL:
SET @PatchingMetricID = (@value & 15);
SET @PatchingMetricType = ((@value / 64) & 3);
As an example, to get the PatchingMetricType value from the metric_id column of U2_patching_metrics, the following query can be used:
SELECT (metric_id / 64) & 3 AS PatchingMetricType FROM U2_patching_metrics
Metric Value
Present in: D2_patching_metrics, U2_patching_metrics :: metric_value
The metric value is the numeric representation of the metric value. This could represent a percentage, or a standard numeric value.
For example, it could be the number of scans of a specific type that have been run.
Comments
0 comments
Please sign in to leave a comment.