XX-net/XX-Net · warning
test appid %s status:%d
Error message
test appid %s status:%d
What it means
test_appid_exist probed a GAE appid and got an HTTP status other than 200 (and not the quota-related 503), so the appid likely isn't deployed or is misconfigured. The warning logs the failing status before content is checked for the GoAgent marker.
Source
Thrown at code/default/gae_proxy/local/web_control.py:64
return "deja.com"
def test_appid_exist(ssl_sock, appid):
request_data = 'GET /_gh/ HTTP/1.1\r\nHost: %s.appspot.com\r\n\r\n' % appid
ssl_sock.send(request_data.encode())
response = simple_http_client.Response(ssl_sock)
response.begin()
if response.status == 404:
# xlog.warn("app check %s status:%d", appid, response.status)
return False
if response.status == 503:
# out of quota
return True
if response.status != 200:
xlog.warn("test appid %s status:%d", appid, response.status)
content = response.read()
if b"GoAgent" not in content:
# xlog.warn("app check %s content:%s", appid, content)
return False
return True
def test_appid(appid):
for i in range(0, 3):
ssl_sock = direct_front.connect_manager.get_ssl_connection()
if not ssl_sock:
continue
try:
return test_appid_exist(ssl_sock, appid)
except Exception as e:View on GitHub (pinned to cfa5bc17b6)
Solutions
- Deploy the GoAgent app to the appid (use the deploy command in web UI)
- Verify the appid string in config matches the GAE application ID exactly
- Check appstatus via the GAE console to confirm the app exists and serves 200
Defensive patterns
Strategy: validation
Validate before calling
# before enabling an appid, confirm the GAE app is deployed
import urllib2
r = urllib2.urlopen('https://%s.appspot.com/_gh/' % appid)
assert r.getcode() == 200 Try / catch
try:
ok = test_appid(appid)
except Exception:
ok = False Prevention
- Deploy the GoAgent GAE app before listing the appid in config
- Verify appid spelling against the GAE console
When it happens
Trigger: Calling test_appid for an appid that was never deployed, was deleted, or the appid string is misspelled; the GAE app returns 404/500.
Common situations: First-run setup where the user hasn't uploaded the GoAgent GAE app yet; appid renamed in config but not on GAE; Google App Engine quota or auth changes.
Related errors
- check_appid %s %r
- 605
- no appid
- login session fail, status:%r
- all appid out of quota, wait %d seconds to reset
AI-assisted analysis of XX-net/XX-Net@cfa5bc17b6 (2026-08-27).
Data as JSON: /api/errors/506c08519b42b3e2.
Report an issue: GitHub.