DownorNot is down(downornot.com)
downornot.com
DownorNot is down
http://www.downornot.com/
6 comments
http://isitup.org/downornot.com
downornot.com is up.
It took 115 ms for a 302 response with an ip of 208.94.146.70.
downornot.com is up.
It took 115 ms for a 302 response with an ip of 208.94.146.70.
Not sure how they get a 302, I get a 500. And in any case, a 302 is a redirect, they should follow it to know if it's really down.
http://www.downforeveryoneorjustme.com/downornot.org gives a better result, in my opinion.
http://www.downforeveryoneorjustme.com/downornot.org gives a better result, in my opinion.
I don't get an HTTP error, I get a stack trace:
Traceback (most recent call last):
File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/_webapp25.py", line 710, in __call__
handler.get(*groups)
File "/base/data/home/apps/wmc/12.348534319863004081/don.py", line 306, in get
self.work()
File "/base/data/home/apps/wmc/12.348534319863004081/don.py", line 364, in work
get_cpinfo()
File "/base/data/home/apps/wmc/12.348534319863004081/don.py", line 510, in get_cpinfo
for cp in DonCP.all().fetch(100):
File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/db/__init__.py", line 2145, in fetch
return list(self.run(limit=limit, offset=offset, **kwargs))
File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/db/__init__.py", line 2314, in next
return self.__model_class.from_entity(self.__iterator.next())
File "/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_query.py", line 2816, in next
next_batch = self.__batcher.next()
File "/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_query.py", line 2678, in next
return self.next_batch(self.AT_LEAST_ONE)
File "/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_query.py", line 2715, in next_batch
batch = self.__next_batch.get_result()
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 604, in get_result
return self.__get_result_hook(self)
File "/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_query.py", line 2452, in __query_result_hook
self._batch_shared.conn.check_rpc_success(rpc)
File "/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_rpc.py", line 1222, in check_rpc_success
rpc.check_success()
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 570, in check_success
self.__rpc.CheckSuccess()
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_rpc.py", line 133, in CheckSuccess
raise self.exception
OverQuotaError: The API call datastore_v3.RunQuery() required more quota than is available.Yes, that's the content, but the HTTP status is 500 (Internal Server Error). Try with curl or a tool like http://www.webconfs.com/http-header-check.php
Sure, it responds to a request, but is it really what you expected when you go to downornot.com?
http://www.isup.me/downornot.com
Gives the correct response - site is down. The www. is, of course, optional.
Gives the correct response - site is down. The www. is, of course, optional.
My brother emailed me a link to this gem: http://www.isdownforeveryoneorjustmedownforeveryoneorjustme....
The URL gets truncated by HN. It's: www.isdownforeveryoneorjustmedownforeveryoneorjustme.com
The URL gets truncated by HN. It's: www.isdownforeveryoneorjustmedownforeveryoneorjustme.com
Well, it worked. I know it's down.
lol, meta
I'm guessing that running a query on initial load is likely for capturing metrics. This should get refactored to fail silently and potentially also use a memcache-backed counter:
https://developers.google.com/appengine/articles/scaling/mem...
Basically, store the count in memcache and only commit to the datastore when the counter hits a certain amount. You run the risk of losing some of your analytics but it's more important to keep your resource usage low and your app online than it is to capture every single hit.