The Problem Background Process automatically starts with the sm system start. In case you find that the problem background process idle time in system status is not less than one minute or there is delay in processing of records or large number of Schedule record waiting to be processed and you notice failed schedule records with status of "application failed due to error - check msglog for possible message." and a blank Class field.
Take the first step to verify if problem process is actively processing records
- Login Service Manager as system administrator
- Go to the system status and confirm that the problem idle time is less than one minute.
- In case idle time is more than one minute then execute steps inline
a. Kill the Problem process
b. Go to the schedule records typing sch in the Service Manager command line
c. Look for records with schedule class=problem and status=a*
d. Perform a mass unload of the results and then proceed to perform a mass delete
e. If the search does not return any record, look for status=a* and remove the value in the schedule class field
f. Repeat the step d
g. Go to the system status and start the problem process
4. Go back to the schedule records and confirm that the count of records with class=problem is reduced.
5. If this does not work, the problem process on your system may not be working normally.
You can debug problem background process to find out why it fails.
With SM 9.4x you can use dynamic debugging method as described in help server
System Administration > Status and Notifications > Dynamic debugging of user sessions or schedulers
Set debugging parameters for a user session/scheduler, follow these steps:
- Click System Status. The system status form opens.
- Type the following command in the Command field for the user session or scheduler:
2. Click Execute Commands.
3. Click Send Debug Msg. The Send Debug Message form opens.
4. Set debugging parameters as needed. The following figure shows an example.
5. Verify from log
Alternative Debug Method: Refer to KM480574_How to trace a background process in Service Manager.
In event when large number of “message processor” records are waiting to be processed
Follow steps inline to start the multiple problem processes if you have a large number of problem schedule records generated on your system and you want to spread the processing across multiple problem background processes to avoid a delay in processing the records.
Here are the two tasks to follow to implement the functionality (which is designed for the problem background process only):
Note: In this example we will add five additional problem processes, however you can add a different number based on your system.
Task #1 –
Add the additional problem process names to the System Information record
- Login to Service Manager and go to Menu Navigation --> System Administration -- Base System Configuration – Miscellaneous --- System Information Record
- Go to the Message Processors tab
- Enter a problem process name for each additional problem process you want to start, for example:
Save the record.
Note: The values entered on the Message Processor tab are used by the system to populate the Class field of each new problem schedule record in a rotating order. Also, a system restart was not necessary for the system to begin using the values for new problem schedule records after the System Information Record was saved. As new schedule records are created you should see the new Class values, such as problem1, problem2, etc.
Task #2 –
Start a new background process for each problem process so the schedule records with the new class are processed
- Go to Menu Navigation--System Administration--Base System Configuration--Miscellaneous--Agent Registry
- Enter startup in the Type field and press Search.
- In the Processor Information section scroll down and in the first empty space enter the information for each additional background process, such as:
RAD Application: scheduler
Wakeup Interval: 60
- Repeat Step #3 for each additional process, such as problem2, problem3, etc.
- Save the startup info record. This will start all of the additional problem processes when the system is started.
- If you want to be able to restart each problem process separately select the problem info record, change the Type, Name, and Class fields to the new process name, such as problem1, and then select Add, not Save. Repeat this step for each new problem process.
- Start the additional background processes.
Also, Support would recommend you to carry out weekly administrative tasks as a best practice keep verifying that none of the schedule records have encountered errors. Schedule records that encountered an error will have a status of “application failed due to error - check msglog for possible messages” and the class field will be empty with the scheduled class being set to the value of the class field. At this stage there is no automated way that support can provide to maintain schedule file. Although if maintenance activity can be planned & carried out on weekly or biweekly basis then chances for issue reoccurrence are very low.
We would make the following recommendations:
- Stop all current background processors.
- Delete all current “message processor records” from the schedule file
- Check how many schedule records exist, If possible provide unload of this file to HP Support for review.
- If offending schedule record can be identified at this point, remove this record.
- If offending record cannot be identified, we will need to clear the whole schedule file and reload a new out of the box schedule file
- Restart the background processors and monitor for reoccurrence