When agents request policy, they get a unique personalized policy. The agent policy file contains paths to various other packages (OSDs). The agent packages are created for a unique set of properties. Agents with same set of properties get the same package. E.G. agents part of same Inventory Groups get the same Default Failover Package, agents with same schedule(s) get the same Default Machine Schedule package and so on. The Inventory Settings package is same for all agents.
When an agent requests a policy, Beacon evaluates its various set of properties and for each package, it checks if the files already exists, otherwise it creates the file, and then serves the policy. When a Beacon downloads a new Beacon Policy file, it can affect agent's properties, hence Beacon deletes all the local packages and they are rebuilt when agents request their policies.
If the Beacon Policy file is updated between an agent requests the policy and Beacon updates its own policy file, then the agents may get a 404 error. In that case they try with other Beacons, while it is not guaranteed that other Beacons would have the package either. So the IIS errors you see may because the Beacon ran into that situation OR because another Beacon ran into that situation and agent is requesting this Beacon as a failover request.
To resolve, stop the Beacon webserver and delete the following folders at C:\ProgramData\Flexera Software\Staging\Common
And then restart the BeaconIIS. If possible, have an agent request the policy or just monitor the logs for some time:
mgspolicy -t Machine
When agent requests the policy, the BeaconIIS log shall show messages like "Writing package file" and you should not see an issue with packages it is creating. However if an agent requests a package, without actually requesting policy first, from this Beacon it may still throw a 404.
Hope that helps.
... View more