|
|
@@ -2,15 +2,24 @@
|
2
|
2
|
|
3
|
3
|
import errno
|
4
|
4
|
import glob
|
|
5
|
+# import logging
|
5
|
6
|
import os
|
6
|
7
|
import sqlite3
|
|
8
|
+from functools import wraps
|
7
|
9
|
|
8
|
10
|
from tornado.httpserver import HTTPServer
|
9
|
11
|
from tornado.ioloop import IOLoop
|
|
12
|
+from tornado.log import app_log as logger
|
10
|
13
|
from tornado.options import define, options
|
11
|
14
|
from tornado.web import Application, RequestHandler, StaticFileHandler
|
12
|
15
|
|
13
|
16
|
|
|
17
|
+# logger = logging.getLogger('minipai2')
|
|
18
|
+# logger.addHandler(logging.StreamHandler())
|
|
19
|
+# logger.setLevel(logging.INFO)
|
|
20
|
+# logger.propagate = False
|
|
21
|
+
|
|
22
|
+
|
14
|
23
|
define('host', default='127.0.0.1', help='run on the given host', type=str)
|
15
|
24
|
define('port', default=8001, help='run on the given port', type=int)
|
16
|
25
|
options.parse_command_line()
|
|
|
@@ -51,6 +60,21 @@ cur.execute(CREATE_INDEX2)
|
51
|
60
|
conn.commit()
|
52
|
61
|
|
53
|
62
|
|
|
63
|
+# Logging Some Vars
|
|
64
|
+def logit(self, content, key='content'):
|
|
65
|
+ uri = self.request.uri if hasattr(self, 'request') else self
|
|
66
|
+ logger.info('uri=%s&%s=%s', uri, key, content)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+# Logging Request Arguments
|
|
70
|
+def log_request_arguments(func):
|
|
71
|
+ @wraps(func)
|
|
72
|
+ def returned_wrapper(self, *args, **kwargs):
|
|
73
|
+ logit(self, self.request.arguments, key='arguments')
|
|
74
|
+ return func(self, *args, **kwargs)
|
|
75
|
+ return returned_wrapper
|
|
76
|
+
|
|
77
|
+
|
54
|
78
|
# FILE OPERATE
|
55
|
79
|
def silent_makdirs(path):
|
56
|
80
|
try:
|
|
|
@@ -106,6 +130,7 @@ def get_new_files(lensman, session, maxt):
|
106
|
130
|
files = glob.iglob('{}/*'.format(thumb))
|
107
|
131
|
news = []
|
108
|
132
|
for file_ in files:
|
|
133
|
+ logit('/fetch_thumbnail', file_, key='globfile')
|
109
|
134
|
if not file_.endswith('.tmp'): # Whether 'xxx.tmp' or not
|
110
|
135
|
photo_name = file_.split('/')[-1]
|
111
|
136
|
photo_id = photo_name.split('.')[0]
|
|
|
@@ -138,6 +163,7 @@ class HelloHandler(RequestHandler):
|
138
|
163
|
|
139
|
164
|
|
140
|
165
|
class SessionStartHandler(RequestHandler):
|
|
166
|
+ @log_request_arguments
|
141
|
167
|
def post(self):
|
142
|
168
|
lensman = self.get_argument('lensman', '')
|
143
|
169
|
session = self.get_argument('session', '')
|
|
|
@@ -156,6 +182,7 @@ class SessionStartHandler(RequestHandler):
|
156
|
182
|
|
157
|
183
|
|
158
|
184
|
class SessionEndHandler(RequestHandler):
|
|
185
|
+ @log_request_arguments
|
159
|
186
|
def post(self):
|
160
|
187
|
lensman = self.get_argument('lensman', '')
|
161
|
188
|
session = self.get_argument('session', '')
|
|
|
@@ -169,6 +196,7 @@ class SessionEndHandler(RequestHandler):
|
169
|
196
|
|
170
|
197
|
|
171
|
198
|
class FetchThumbnailHandler(RequestHandler):
|
|
199
|
+ @log_request_arguments
|
172
|
200
|
def post(self):
|
173
|
201
|
lensman = self.get_argument('lensman', '')
|
174
|
202
|
session = self.get_argument('session', '')
|
|
|
@@ -176,6 +204,9 @@ class FetchThumbnailHandler(RequestHandler):
|
176
|
204
|
maxt = get_last_timestamp(lensman, session)
|
177
|
205
|
files = get_new_files(lensman, session, maxt)
|
178
|
206
|
|
|
207
|
+ logit(self, maxt, key='maxt')
|
|
208
|
+ logit(self, files, key='files')
|
|
209
|
+
|
179
|
210
|
self.write({
|
180
|
211
|
'status': 200,
|
181
|
212
|
'data': {
|
|
|
@@ -185,6 +216,7 @@ class FetchThumbnailHandler(RequestHandler):
|
185
|
216
|
|
186
|
217
|
|
187
|
218
|
class FetchOriginHandler(RequestHandler):
|
|
219
|
+ @log_request_arguments
|
188
|
220
|
def post(self):
|
189
|
221
|
lensman = self.get_argument('lensman', '')
|
190
|
222
|
session = self.get_argument('session', '')
|
|
|
@@ -202,6 +234,7 @@ class FetchOriginHandler(RequestHandler):
|
202
|
234
|
|
203
|
235
|
|
204
|
236
|
class DeletePhotoHandler(RequestHandler):
|
|
237
|
+ @log_request_arguments
|
205
|
238
|
def post(self):
|
206
|
239
|
lensman = self.get_argument('lensman', '')
|
207
|
240
|
session = self.get_argument('session', '')
|