As an administrator, the server on which the scheduled report runs can be configured by inserting a record in ZopaqueData table with name as 'run.scheduled.reports' and data fields as a list of comma separated server GUIDs on which the reports have to be run.
Run the following query to add the 'run.scheduled.reports' entry in the zOpaqueData table:
insert into zopaquedata(object,name,data) values ('zzenobjectid','run.scheduled.reports', 'serverGUID1,serverGUID2');
The data in the database can be modified later by running the following query:
UPDATE zopaquedata SET data =('serverGUID1,serverGUID2') WHERE name = 'run.scheduled.reports';
serverGUID1 and serverGUID2 are the GUIDs of servers on which the scheduled report should be run.
For the changes to take effect, you can either wait for an hour without restarting the ZENserver service or restart the ZENServer service for the changes to take effect immediately.
This entry in zOpaqueData governs only the inventory-scheduled reports and does not govern the custom reports, or predefined reports. These reports will continue to run in the existing method.
Earlier the schedules were checked every 10 minutes. Now we are checking for the servers that are listed in zOpaqueData only. In case no entry is created in zOpaqueData, the scheduled reports run on any server in the zone like earlier.