Serial number's valid field set to false after discovery.
All currently supported releases.
The default value for cmdb_serial_number.valid is "false". Discovery, or any other source creating such CIs, must set valid = true before creating/updating a serial number. Discovery calls SncSerialNumber() with a list of serial numbers to determine if the serial numbers are valid or not.
SncSerialNumber sets the serial numbers to active. Then iterates through a set of condition to determine if this serial number should be set to invalid. The condition to determine if a serial number is "valid = false" are:
- Serial number is empty.
- Serial number is composed of the same repeating character.
- Serial number meets any of the conditions listed under dscy_invalid_serial.
If discovered/created via a OOB probe/sensor or pattern the SncSerialNumber should be called and properly set the serial number valid field accordingly.
If discovered/created via a probe/sensor, pattern, or any other sources which are not OOB the SncSerialNumber may not be called to set the field valid to true. The field value will be set to false, since the default value for this field is false. The resolution will depend on how the CI is being created.
- Ensure the sensor properly calls SncSerialNumber to set the valid field to true for each serial number. Review OOB "Windows - Hardware Information" sensor for an example.
- Patterns set the valid field to true via "Pre Post Processing" scripts. Review "Windows OS - Pre Sensor" for an example. Validate serial number via a pre post script, "Pattern Designer > Pre Post Processing" (sa_pattern_prepost_script).
- Use SncSerialNumber to validate serial numbers before inserting into the CMDB.
SncSerialNumber being called appropriately or OOB discovery:
- Check if the serial number meets one of the conditions found on table dscy_invalid_serial. If so, the serial number will be considered invalid (valid = false).