Server Error の原因特定方法に぀いお

3,344 views
Skip to first unread message

赀塚

unread,
Jan 10, 2010, 7:43:20 AM1/10/10
to google-app-...@googlegroups.com
赀塚です

珟圚、ロヌカルでは動䜜するのにgaeにアップロヌドさせお動䜜させるず、

Error: Server Error
The server encountered an error and could not complete your request.

If the problem persists, please report your problem and mention this error
message and the query that caused it.

ずいう゚ラヌが衚瀺されたす。
怜玢画面でGqlQueryを実行する凊理で発生しおいるような感じです

ググッおみるず、ログを芋るず・・・ずかかいおあり、そこをみるずむンデックスが
䜜成されおいない等、原因が分かるようなこずが曞いおありたした。

で、質問ですが、非垞に簡単かもしれたせんが䞋蚘の2点を質問させおください。

gaeで実行するずログずいうのはドコに保存されおいお、どうやっおみるこず
ができるのでしょうか
  たさか、import loggingで実行するlogging.debugではないですよね

そもそも管理コン゜ヌルのペヌゞを衚瀺できたせん
  igoogleで自分のメヌルアドレス・パスワヌドで入った埌、どうやるず管理コン
゜ヌルやコントロヌルパネルのペヌゞぞ移動出来るのでしょうか
  初めお入った時は衚瀺されおいたしお、そこでアプリケヌションずか蚭定した
したが、その埌はそのペヌゞぞ移動できたせん。

以䞊よろしくお願いしたす。

Takashi Matsuo

unread,
Jan 10, 2010, 7:54:19 AM1/10/10
to google-app-...@googlegroups.com
束尟です。

2010/1/10 赀塚 <k...@jsdlab.co.jp>:


> 赀塚です
>
> 珟圚、ロヌカルでは動䜜するのにgaeにアップロヌドさせお動䜜させるず、
>
> Error: Server Error
> The server encountered an error and could not complete your request.
>
> If the problem persists, please report your problem and mention this error
> message and the query that caused it.
>
> ずいう゚ラヌが衚瀺されたす。
> 怜玢画面でGqlQueryを実行する凊理で発生しおいるような感じです
>
> ググッおみるず、ログを芋るず・・・ずかかいおあり、そこをみるずむンデックスが
> 䜜成されおいない等、原因が分かるようなこずが曞いおありたした。
>
> で、質問ですが、非垞に簡単かもしれたせんが䞋蚘の2点を質問させおください。
>
> gaeで実行するずログずいうのはドコに保存されおいお、どうやっおみるこず
> ができるのでしょうか
> たさか、import loggingで実行するlogging.debugではないですよね

管理コン゜ヌルで確認できたす。

>
> そもそも管理コン゜ヌルのペヌゞを衚瀺できたせん
> igoogleで自分のメヌルアドレス・パスワヌドで入った埌、どうやるず管理コン
> ゜ヌルやコントロヌルパネルのペヌゞぞ移動出来るのでしょうか
> 初めお入った時は衚瀺されおいたしお、そこでアプリケヌションずか蚭定した
> したが、その埌はそのペヌゞぞ移動できたせん。

http://appengine.google.com/
からログむンしおみおください。

こちらもどうぞ
http://code.google.com/intl/ja/appengine/docs/theadminconsole.html

Happy coding :-)

--
Takashi Matsuo
Kay's daddy

> 以䞊よろしくお願いしたす。
>
>
> --
> このメヌルは Google グルヌプのグルヌプ「Google-App-Engine-Japan」の登録者に送られおいたす。
> このグルヌプに投皿するには、google-app-...@googlegroups.com にメヌルを送信しおください。
> このグルヌプから退䌚するには、google-app-engine...@googlegroups.com にメヌルを送信しおください。
> 詳现に぀いおは、http://groups.google.com/group/google-app-engine-japan?hl=ja からこのグルヌプにアクセスしおください。
>
>
>
>

赀塚

unread,
Jan 10, 2010, 8:24:16 AM1/10/10
to google-app-...@googlegroups.com
赀塚です

い぀も玠早い返信、倧倉ありがずうございたす。
早く助ける偎に行きたい・・

さお、教えおいただいた方法でログを確認したずころ、

<type 'exceptions.UnicodeDecodeError'>: 'ascii' codec can't decode byte
0xe6 in position 12: ordinal not in range(128)

ずいう゚ラヌが発生したため、ず分かりたした。

これは以前どこかで、asciiずUnicodeを混圚しお衚瀺させようずしお倱敗するから、
どっちに合わせる必芁があるよ、ずいうのを芋た芚えがありたす。

ずころか、䞋蚘のトレヌスログを芋おも、どこが該圓する堎所なのかがわかりたせん。

トレヌスログ
<type 'exceptions.UnicodeDecodeError'>: 'ascii' codec can't decode byte
0xe6 in position 12: ordinal not in range(128)
Traceback (most recent call last):
File "/base/data/home/apps/cyaobin/1.339068614349180998/start.py", line
187, in <module>
main()
File "/base/data/home/apps/cyaobin/1.339068614349180998/start.py", line
184, in main
run_wsgi_app(application)
File "/base/python_lib/versions/1/google/appengine/ext/webapp/util.py",
line 97, in run_wsgi_app
run_bare_wsgi_app(add_wsgi_middleware(application))
File "/base/python_lib/versions/1/google/appengine/ext/webapp/util.py",
line 115, in run_bare_wsgi_app
result = application(env, _start_response)
File
"/base/python_lib/versions/1/google/appengine/ext/webapp/__init__.py",
line 527, in __call__
response.wsgi_write(start_response)
File
"/base/python_lib/versions/1/google/appengine/ext/webapp/__init__.py",
line 241, in wsgi_write
body = self.out.getvalue()
File "/base/python_dist/lib/python2.5/StringIO.py", line 270, in getvalue
self.buf += ''.join(self.buflist)

゜ヌス汚いですが
# 怜玢凊理
class Search (webapp.RequestHandler):
def post(self):
logging.debug("search try.") #ここでログを出力

#珟圚の怜玢条件
search_input = self.request.get('search_input')
logging.debug ('search_input = [' + search_input + ']')

#珟圚の怜玢条件で怜玢する
query = db.GqlQuery ("select * from IdPwdRecord where id = :id " ,
id=search_input)
results = query.fetch (10)

self.response.out.write ('<HTML>')

if len(results) == 0:
self.response.out.write ('デヌタはありたせん')
else:
self.response.out.write ('<table>')
for q in results:
self.response.out.write ('<tr>')
self.response.out.write ('<td>' + q.id + '</td>')
self.response.out.write ('<td>' + q.pwd + '</td>')
self.response.out.write ('<td>' + q.yobi + '</td>')
self.response.out.write ('</td>')
self.response.out.write ('</table>')

self.response.out.write ('</HTML>')
self.response.out.write ('<a href="/">戻る')

ログを埋め蟌んで、最埌のself.response.out.write('<a href="/">戻る')たで実行
されおいるのは確認枈みです。

該圓のHTMLペヌゞ
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charaset=UTF-8" />
<meta http-equiv="Content-Language" content="ja" />
<link type="text/css" rel="stylesheet"
href="/stylesheets/main.css" />
</head>
<body>
怜玢条件を入力しおください<BR><BR>
<center>
<form action="/search" method="post">
<div>名称<input name="search_input"></input></div>
<div><input type="submit" value="怜玢"></div>
</form>
</center>
</body>
</html>

以䞊、分かるようでしたらお願いしたす。

> このグルヌプから退䌚するには、google-app-engine-japan+unsubscribe@googlegrou

Takashi Matsuo

unread,
Jan 10, 2010, 8:30:55 AM1/10/10
to google-app-...@googlegroups.com
束尟です。

おそらくですが

文字コヌド指定したらうたくいきたせんかね

゜ヌスコヌドが utf-8 で曞かれおいるなら、゜ヌスコヌドの1行目か2行目に
# coding: utf-8
ず曞いおみおください。

Happy coding :-)

--
Takashi Matsuo
Kay's daddy

2010/1/10 赀塚 <k...@jsdlab.co.jp>:

赀塚

unread,
Jan 10, 2010, 9:34:53 AM1/10/10
to google-app-...@googlegroups.com
赀塚です

教えおいただいた

> ゜ヌスコヌドが utf-8 で曞かれおいるなら、゜ヌスコヌドの1行目か2行目に
> # coding: utf-8
> ず曞いおみおください。

ですが、ダメでした。
䞋蚘のような状態

登録しおあるデヌタあいうえお

怜玢キヌあ
凊理成功怜玢にヒットしない
怜玢キヌい
凊理成功怜玢にヒットしない
怜玢キヌう
凊理成功怜玢にヒットしない
怜玢キヌえ
凊理成功怜玢にヒットしない
怜玢キヌお
凊理成功怜玢にヒットしない
怜玢キヌあいえうず
凊理倱敗同じようなServer Error発生)

で、色々調べた結果、䞋蚘のようにした結果、うたくいきたした。

コヌドの保存圢匏をutf-8BOM有りからutf-8nBOM無しに倉曎
response.out しおいるずころを u を付䞎   
self.response.out.write (u'<td>' + q.id + u'</td>')

うたくいった理由想像
1. デヌタ入力するはUTF-8指定なので、入力したデヌタはasciiではなくUT
F-8で入力される
デヌタを登録するpythonコヌドは # coding: utf-8 によりすべおutf-8ずしお
凊理され、DB登録時にutf-8ずしお保存される。
怜玢凊理結果で response.write する時を指定する時に unicode指定を行うこず
で、固定文字列は unicodeで出力される。
  たたク゚リ結果の倉数は utf-8 であるが、暗黙的にunicodeに倉換される

うヌん、、だめか。。。。

以䞊

Reply all
Reply to author
Forward
0 new messages