This documentation supports the 19.02 version of BMC Atrium Core.

To view the latest version, select the version from the Product version menu.

Reconciliation job logging


To debug Reconciliation Engine errors using the log file

The Reconciliation Engine logs errors that can help you to troubleshoot reconciliation issues.

  1. Search for the entry in the Reconciliation Engine log file that contains [ERROR] in its description.
  2. Note the thread ID (TID) specified in this error entry.
  3. Trace back to the beginning of the log file while looking for more entries with the specific TID.
    You will find several entries for the specific TID. Each entry reports the task that the Reconciliation Engine performs at each stage.

 

Interpreting entries in the log file

The Reconciliation job log is a multi-threaded program with all threads writing to the same log file. The log files are divided by activity names. Each of these activities has a start or run entry, indicating the start of the activity, and an end or completed entry indicating the end of the activity. The following examples illustrate both these entries.

Example 1: Starting an activity

[Tues Apr 24 2007 12:10.08.4748] [INFO] [TID: 000011]: Running activity: BMC Topology Import - Identification Activity

Example 2: Ending an activity

[Tues Apr 24 2007 12:10.08.4748] [INFO] [TID: 000011]: Activity completed: BMC Topology Import - Identification Activity

Each entry contains a thread ID (TID) that identifies a unique activity. If multiple instances need to be identified, the Reconciliation job creates separate threads for each instance identification. Therefore, the log file contains mixed entries for various threads instead of having one section for each thread.

The following code is an example of a Reconciliation job log file.

[2007/03/30 10:35:36.1370] [DETAILS] [TID: 003720] : Started waiting for all the threads to finish
[2007/03/30 10:35:39.7710] [DETAILS] [TID: 002696] : Started identifying instance <class = QA_Patch2_No_Ident_Multi_Match: Patch2_1Class_No_Ident_Multi_Match, id = ID00087492D05D8nFOQw8SSKBAawAA>
[2007/03/30 10:35:39.7710] [ TRACE ] [TID: 002696] : Found matching rule group <Patch002-Identify D2 against D1> for class <QA_Patch2_No_Ident_Multi_Match:Patch2_1Class_No_Ident_Multi_Match > in dataset <Data Set 02>
[2007/03/30 10:35:39.7710] [ TRACE ] [TID: 002696] : Applying rule <'Character_Field' = $Character_Field$> and looking in dataset <Data Set 01>
[2007/03/30 10:35:39.7710] [DETAILS] [TID: 002696] : Substituting values in the qualification
[2007/03/30 10:35:39.7710] [DETAILS] [TID: 002696] : Replaced field <id = 536870999 and name = Character_Field> with value <All Match Error During Identification - Recon ID (Below) should remain 0>
[2007/03/30 10:35:39.7810] [ ERROR ] [TID: 002696] : Found multiple matches (instances) for class <QA_Patch2_No_Ident_Multi_Match:Patch2_1Class_No_Ident_Multi_Match > in look-up dataset <Data Set 01>
[2007/03/30 10:35:39.7810] [ ERROR ] [TID: 002696] : for qualification <'Character_Field' = <Character_Field$> of group <Patch002-Identify D2 against D1> with values
[2007/03/30 10:35:39.7810] [ ERROR ] [TID: 002696] : <Character_Field = All Match Error During Identification - Recon ID (Below) should remain 0 >
[2007/03/30 10:35:40.1310] [ INFO ] [TID: 002696] : Processed instance without finding a match for instance <ID00087492D05D8nFOQw8SSKBAawAA> for class <QA_Patch2_No_Ident_Multi_Match:Patch2_1Class_No_Ident_Multi_Match > in dataset
[2007/03/30 10:35:40.1310] [ ERROR ] [TID: 002696] : Cannot identify the instance of class <QA_Patch2_No_Ident_Multi_Match:Patch2_1Class_No_Ident_Multi_Match > with instance id <ID00087492D05D8nFOQw8SSKBAawAA> in dataset <Data Set 02>
[2007/03/30 10:35:40.1310] [ INFO ] [TID: 002696] : Cancelled the processing of rest of the sub-tree for instance of class = QA_Patch2_No_Ident_Multi_Match:Patch2_1Class_No_Ident_Multi_Match and instance id = ID00087492D05D8nFOQw8SSKBAawAA
[2007/03/30 10:35:40.6720] [DETAILS] [TID: 003720] : Finished waiting


In this example, the Identification Rule looks for a match based on the value of the Character_Field attribute. An error is generated for this job because the Reconciliation Engine finds multiple matches in the lookup dataset against which the CI is to be identified. As a result of the error, the Configuration Item (CI) in the source dataset is not identified and the Reconciliation ID remains 0.

In the Reconciliation Engine if the logging level is set to debug, the arrecond.log file that stores the logs becomes large in size. It can grow to a size that is in multiple Gigabytes (GB). As a result, it is difficult to open the log file to analyze logs.

To control the file size of the log file, you can edit the reconciliation engine configuration options. A value of zero indicates that the limit on the maximum file size is not specified. In that case, the log file takes the default value. The default value is of 20480KB (20MB). You can specify the log file size value in the range from 0 to 2097152 KB (2GB).

When the file size of the arrecond.log file reaches the maximum size, the Reconciliation Engine automatically renames this file to arrecond_1.log and writes further logs to the arrecond.log file. Thus, the arrecond.log file is always the latest log file, and the arrecond_highestNumber.log is the latest backup file.



Was this page helpful? Yes No Submitting... Thank you

Comments