Recently we had a problem with our CDN service: one of edge locations cached incomplete version of javascript file and our customers from United Arab Emirates (and maybe some other nearby countries) were not able to use our service. This issue is resolved now, but we've realized that monitoring of our CDN network might be a good idea.
We need to monitor:
- Resources are available.
- They have correct content-type, content-encoding (gzip), expires and some other headers
- They have same size on all geo locations.
- Resources often change names (we are changing filename suffix when updating it with a new version), so we need to have ability to change monitored resource urls quickly and in best case automatically during deploys.
Since our CDN provider have a lot of servers in different locations, we need to track this from many different locations as well. I've seen a lot of services that can track website from many locations, but all of them seems to be focused on measuring availability and speed, while for this issue we are more focused on consistency.
So, I believe we have following options:
- Find a hosted monitoring service which can do required. Does anyone know any?
- Write a monitoring script using some list/network of proxy servers. Is there are any reliable list/service for this?
- Write a script using tor exit node specification to track our resources from different locations.
- Use some other CDN that have this functionality out of the box and guarantee that all copies of out resources on all locations are consistent. But we'd still like to have some 3rd-party monitoring.
What is better approach? Can you suggest something else to solve our problem?
Thanks.