Troubleshooting the discovery on IBM i

Available from 9.2.5. The troubleshooting section lists the most common issues you might encounter while discovering software and hardware inventory with the disconnected scanner. The main objective of troubleshooting is to determine why something does not work as expected and explain how to resolve the problem.

Log files

Scanner log files are in the following directories:
  • /Installation directory/logs/*.
  • /etc/cit/logs/*
The default installation directory is /cit.

Transferring files from IBM i systems

The internal file structure of IBM i systems displayed when connecting over FTP is very complex. However, you can use one of the following commands to make it more UNIX-like. Issue one of these commands after connecting over FTP:
cd /
site NAMEFMT 1
Tip: For more information, see Using the FTP Subcommand: NAMEFMT.
Next, set the appropriate mode for transferring your files, either binary or text. Use the binary mode for transferring scan results, and text mode to obtain the scanner log files.

Optimizing the processor utilization

By default, processor utilization is not limited during the scan. You can optimize it by setting up the CPU threshold.
Note: Setting the threshold does not guarantee that the CPU consumption is always below the specified value. It fluctuates around that value, sometimes exceeding it and sometimes dropping below it. Temporary peaks are expected. Setting the threshold might lengthen the time of the scan.
  1. Edit the sw_config.xml file that you downloaded with the scanner.
  2. Add two new cpuThreshold attributes, one for FSScanner and another for Signatures. For example:
    <BigFix>
    <CIT>
    <XSE version="1.0">
    <Plugins>
    <Plugin name="FSScanner">
    <Attribute name="cpuThreshold" value="20:2:150:850"/>
    (...)
    <Attribute name="interruptOnTimeout" value="true"/>
    </Plugin>
    </Plugins>
    <Signatures>
    <Attribute name="cpuThreshold" value="20:2:150:850"/>
    </Signatures>
    </XSE>
    </CIT>
    </IBM>
  3. Specify one of the following values:
    Desired utilization Value
    5% 10:2:50:950
    10% 20:2:100:900
    15% 20:2:150:850
    20% 30:2:200:800
    25% 30:2:250:750
    50% 50:2:300:500
  4. Save the file.

Excluding directories from being scanned

You can exclude directories from being scanned during the catalog-based and ISO tags scan. To do this, edit the sw_config.xml file. Specify the directories as values of the excludeDirectory attributes.
  • To exclude the /tmp directory:
    <Attribute name="excludeDirectory" value="/tmp/"/> 
  • To exclude all directories named tmp, for example /tmp and /dir/tmp:
    <Attribute name="excludeDirectory" value="*/tmp/"/> 

Providing failing packages to BigFix Support

Import of a package is failing
If you see the following errors in the import log, provide the whole scan package.
2015-11-06 08:31:07 INFO: Processing scan package: 201511041200-9.128.0.223.zip from: /disconnected/.
2015-11-06 08:31:08 INFO: ETL from FileSystem - SAM::DisconnectedScan 
(0x00000000563C63FF - 0x00000000563C6514): Failed
2015-11-06 08:31:08 ERROR: Sequel::UniqueConstraintViolation: 
Java::ComIbmDb2JccAm::SqlIntegrityConstraintViolationException: One or more values in the INSERT statement, 
UPDATE statement, or foreign key update caused by a DELETE statement are not valid because the primary key, 
unique constraint or unique index identified by "1" constrains table "DBO.RAW_DATASOURCE_FILES" from having 
duplicate values for the index key.. SQLCODE=-803, SQLSTATE=23505, DRIVER=3.64.104
Import of a single file is failing
The import of a single file from the scan package is failing if the import log contains the following message:
2015-11-06 10:48:07 WARN: An error occurred parsing XML file 2 in file isotagsearch_0_375.zip. 
Install path value was not found.
Such a file must be provided with its long path. To determine the path, complete the following steps:
  1. Go to the BigFix Inventory installation directory.
  2. Search for the failing file:
    find -name "isotagsearch_0_375.zip"

    Command output that must be provided to Support:

    ./wlp/usr/servers/server1/tmp/datasources/2/UploadManager/sha1/75/375/isotagsearch_0_375.zip

Common problems

The package is being skipped during the import despite meeting the requirements
Such a problem might occur if you are importing more than one package from an endpoint. BigFix Inventory always imports the latest package and omits all previous ones. The following message about skipping the package is related to irrelevant packages and can be ignored:
2015-11-05 09:35:22 WARN: Skipping file: package_scan.xml from: 201510101200-2inarow.zip. 
The data was already processed.
2015-11-05 09:35:22 INFO: Skipping file: package_scan.xml. 
Unsupported file in: 201510101200-2inarow.zip.
The import might fail if you use the same results of the capacity scan in different packages
This problem might occur if you reuse the capacity scan results for testing purposes. If more than one endpoint has the same scan results, the import fails and the following message is displayed:
ERROR:  (ImportCapacity-Thread:3) doInsert com.ibm.db2.jcc.am.SqlIntegrityConstraintViolationException:
One or more values in the INSERT statement, UPDATE statement, or foreign key update caused 
by a DELETE statement are not valid because the primary key, unique constraint or unique 
index identified by "1" constrains table "ADM.LAST_IMPORTED_SCAN" from having duplicate values 
for the index key.. SQLCODE=-803, SQLSTATE=23505, DRIVER=3.64.104

Ensure that you run the capacity scan for each of your endpoints and use appropriate results.

The software or ISO tags scan fails and no results are created
Run the following command in QSH, and then repeat the scan.
export QIBM_MULTI_THREADED=Y
The software is discovered and bundled, but there are no PVU calculations
The problem might be caused by an incorrect epoch, which points to the date in the future. The epoch is included in file names of the capacity scan results, for example tlm_hw_201603021330_1456969683.xml. Open the capacity.zip archive, and check whether the epochs are correct. You will have to convert the epoch into a normal date. On Linux, you can do it by running the date -d @epoch command.
The host name of an endpoint provided by the disconnected scanner is different than expected
The host name that is provided by the disconnected scanner and a regular scanner can be different. The regular scanner uses the host name that is provided by BigFix, while the disconnected scanner checks the host name by running the hostname command, or, if not available, through the scanner check.
Opening a support case
If none of the above solutions work for you, open a support case and provide the following files to BigFix Support:
  • package with scan results
    • /Installation directory/run_hw_std.log
    • /Installation directory/run_sw_and_pack_std.log
  • /Installation directory/warning*.xml file
  • scanner logs from /etc/cit/logs
  • the console output of a failed step in the debug mode, if possible. The example below generates the /cit/failure.log file with the output:
    export QIBM_MULTI_THREADED=Y
    /qsys.lib/qtivcit.lib/wscansw.pgm -s -c /cit/sw_config.xml -i /cit/CIT_catalog_I5OS.xml
    -o /cit/catalog_scan_man.xml -e /cit/warning_man.xml -debug
    >/cit/failure.log 2>&1

Monitoring the import log

When you import a package with scan results to BigFix Inventory, the import log (Management > Data Imports) displays information and warning messages related to your package. If the package or its content does not meet the requirements, it might be skipped during the import, and the scan results will not be displayed in BigFix Inventory. While monitoring the import log, you can expect the following messages:
info: Processing scan package: package from: directory.
info: Invalid file name. The scan package must match the pattern YYYYMMDDHHMM-*.zip. Skipping package: package.
info: Invalid Catalog Version property in the computer.yml file: version. The property must match the pattern <Number>.<Number>. The catalog might be reported as outdated.
warn: The disconnected scans location does not exist: directory.
warn: Invalid file name. The scan date must be later than year 2000. Skipping package: package.
warn: Skipping corrupted scan package: package. The following error occurred: error.
warn: Missing computer.yml file. Skipping package: package.
warn: Missing property: property in the computer.yml file. Skipping package: package.
warn: Invalid computer.yml file. Skipping package: package. The following error occurred: error.
warn: The value of the endpointID property in the computer.yml file is longer than 512 characters. Skipping package: package.
warn: The value of the endpointID property in the computer.yml file is empty. Skipping package: package.
warn: Missing property: endpointID in the computer.yml file. Skipping package: package.
warn: Importing older scan package from: date for computer: computer_id. This computer already has data from: date.
warn: The file is larger than 2097150 bytes. Skipping file: scan_file from: package for computer: computer_id.
warn: The following error occurred when processing the package_scan.xml file: error.
warn: The insertion of the operating_system package data into the database failed on record content. The following error occurred: error.