servers have missed patching due to blank schedule
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
issue is this " servers have missed patching via automaion . 129 windows servers have missed patching even when the schedule field value was available in snow tool. why the patching was skipped for these servers.
What should be done to resolve this as schedule field has value in servicenow but while
The Integration ID (: SNADLPREDICTIVEOPSSYNC.INTEGRATION) used to pull data from cmdb_ci_server table in ServiceNow via EDF is and its getting issue as whe fetching data ,then details are missing for many servers and for some servers its fetching details
please share all possible causes of this issue and what is the step by step process to solve it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
Hey @ayush_g
The issue appears to be related to the integration layer between ServiceNow CMDB and the external patch automation system through the integration ID SNADLPREDICTIVEOPSSYNC.INTEGRATION.
Even though the schedule field contains values in ServiceNow, the downstream integration/EDF process is not consistently fetching those details for all servers, which is causing the patching automation to skip around 129 Windows servers.
Possible Causes
1. Integration Query or Filter Conditions
The EDF integration may be applying filters such as:
Operational status
Install status
Active records only
Updated records only
Specific class filters
As a result, some servers may be excluded during data retrieval.
Example:
install_status=1^operational_status=1
2. Wrong Table or Class Being Queried
Some Windows servers may exist under:
cmdb_ci_win_server
while the integration is querying only:
cmdb_ci_server
This can lead to partial data retrieval.
3. ACL / Security Restrictions
The integration user may not have read access to:
- The schedule field
- Related reference records
- Certain domains or server records
In such cases, the API response may return blank values even though the field is populated in UI.
4. Delta Sync / Incremental Sync Issue
If the integration only fetches recently updated records using:
sys_updated_on>=last_run_time
then some schedule changes may not be captured properly.
5. Reference Field Integrity Issue
If the schedule field is a reference field:
Referenced record may be inactive
Invalid sys_id may exist
Reference record may have been deleted
6. Pagination or Batch Processing Limitation
For large server volumes:
- API pagination
- Batch size limits
- Timeout issues
- Partial processing
may cause some records to be skipped.
7. Mapping / Transformation Issue
The field may exist in source data but not be mapped correctly in:
EDF mapping
Transform map
Payload mapping
JSON parsing logic
8. Domain Separation
If Domain Separation is enabled, the integration user may not have visibility into all domains containing those servers.
Recommended Troubleshooting Steps
Step 1 – Identify Working vs Failed Servers
Prepare:
Few working servers
Few skipped servers
Compare:
- Class
- Schedule value
- Domain
- Operational status
- Install status
- sys_updated_on
Step 2 – Validate Actual Database Values
Run a background script to confirm values are truly stored in database:
var gr = new GlideRecord('cmdb_ci_server');
gr.addNotNullQuery('u_schedule');
gr.query();
while(gr.next()){
gs.print(gr.name + ' | ' + gr.u_schedule);
}Step 3 – Test API Response Using Integration User
Impersonate the integration user and test the Table API:
/api/now/table/cmdb_ci_serverVerify whether:
- Records are visible
- Schedule field is returned
- Any values are blank
Step 4 – Review EDF / Integration Logs
Check:
ECC Queue
REST logs
MID Server logs
Scheduled job logs
syslog
Useful tables:
ecc_queue
syslog
sys_execution_tracker
Look for:
- ACL errors
- Timeout issues
- Pagination failures
- Skipped batches
Step 5 – Validate Table Hierarchy
Check whether affected servers belong to:
cmdb_ci_win_server
If yes, update the integration query to include child classes.
Example:
sys_class_nameINcmdb_ci_server,cmdb_ci_win_serverStep 6 – Perform Full Sync Test
Run a one-time full synchronization instead of delta sync.
If missing servers appear after full sync, then the issue is likely related to incremental sync logic.
Step 7 – Validate Reference Records
If schedule is a reference field:
Verify referenced record exists
Ensure it is active
Confirm integration user has access
*************************************************************************************************************************************
If this response helps, please mark it as Accept as Solution and Helpful.
Doing so helps others in the community and encourages me to keep contributing.
Regards
Vaishali Singh
Servicenow Developer
Linkedin - https://www.linkedin.com/in/vaishali-singh-2273361bb
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2 weeks ago
Hey @ayush_g
Hope you are doing well.
Did my previous reply answer your question?
If it was helpful, please mark it as correct ✓ and close the thread . This will help other readers find the solution more easily.
Thankyou & Regards
Vaishali Singh
Servicenow Developer
Linkedin - https://www.linkedin.com/in/vaishali-singh-2273361bb