1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
#!/usr/bin/python
# -*- coding: GBK -*-
#-------------------------------------------------------------------------------
#
#-------------------------------------------------------------------------------
#
 
from Common import mylog
import CommonDefine
 
ERROR_NO_1 = 1
ERROR_NO_2 = 2
ERROR_NO_3 = 3
ERROR_NO_4 = 4
ERROR_NO_5 = 5
ERROR_NO_6 = 6
ERROR_NO_7 = 7
ERROR_NO_8 = 8
ERROR_NO_9 = 9
ERROR_NO_10 = 10
ERROR_NO_11 = 11
ERROR_NO_12 = 12
ERROR_NO_13 = 13
ERROR_NO_14 = 14
ERROR_NO_15 = 15
ERROR_NO_16 = 16
ERROR_NO_17 = 17
ERROR_NO_18 = 18
ERROR_NO_19 = 19
ERROR_NO_20 = 20
ERROR_NO_21 = 21
ERROR_NO_22 = 22
ERROR_NO_23 = 23
ERROR_NO_24 = 24
ERROR_NO_25 = 25
ERROR_NO_26 = 26
ERROR_NO_27 = 27
ERROR_NO_28 = 28
ERROR_NO_29 = 29
ERROR_NO_30 = 30
ERROR_NO_31 = 31
ERROR_NO_32 = 32
ERROR_NO_33 = 33
ERROR_NO_34 = 34
ERROR_NO_35 = 35
ERROR_NO_36 = 36
ERROR_NO_37 = 37
ERROR_NO_38 = 38
ERROR_NO_39 = 39
ERROR_NO_40 = 40
ERROR_NO_41 = 41
ERROR_NO_42 = 42
ERROR_NO_43 = 43
ERROR_NO_44 = 44
ERROR_NO_45 = 45
ERROR_NO_46 = 46
ERROR_NO_47 = 47
ERROR_NO_48 = 48
ERROR_NO_49 = 49
ERROR_NO_50 = 50
ERROR_NO_51 = 51
ERROR_NO_52 = 52
ERROR_NO_53 = 53
ERROR_NO_54 = 54
ERROR_NO_55 = 55
ERROR_NO_56 = 56
ERROR_NO_57 = 57
ERROR_NO_58 = 58
ERROR_NO_59 = 59
ERROR_NO_60 = 60
ERROR_NO_61 = 61
ERROR_NO_62 = 62
ERROR_NO_63 = 63
ERROR_NO_64 = 64
ERROR_NO_65 = 65
ERROR_NO_66 = 66
ERROR_NO_67 = 67
ERROR_NO_68 = 68
ERROR_NO_69 = 69
ERROR_NO_70 = 70
ERROR_NO_71 = 71
ERROR_NO_72 = 72
ERROR_NO_73 = 73
ERROR_NO_74 = 74
ERROR_NO_75 = 75
ERROR_NO_76 = 76
ERROR_NO_77 = 77
ERROR_NO_78 = 78
ERROR_NO_79 = 79
ERROR_NO_80 = 80
ERROR_NO_81 = 81
ERROR_NO_82 = 82
ERROR_NO_83 = 83
ERROR_NO_84 = 84
ERROR_NO_85 = 85
ERROR_NO_86 = 86
ERROR_NO_87 = 87
ERROR_NO_88 = 88
ERROR_NO_89 = 89
ERROR_NO_90 = 90
ERROR_NO_91 = 91
ERROR_NO_92 = 92
ERROR_NO_93 = 93
ERROR_NO_94 = 94
ERROR_NO_95 = 95
ERROR_NO_96 = 96
ERROR_NO_97 = 97
ERROR_NO_98 = 98
ERROR_NO_99 = 99
ERROR_NO_100 = 100
ERROR_NO_101 = 101
ERROR_NO_102 = 102
ERROR_NO_103 = 103
ERROR_NO_104 = 104
ERROR_NO_105 = 105
ERROR_NO_106 = 106
ERROR_NO_107 = 107
ERROR_NO_108 = 108
ERROR_NO_109 = 109
ERROR_NO_110 = 110
ERROR_NO_111 = 111
ERROR_NO_112 = 112
ERROR_NO_113 = 113
ERROR_NO_114 = 114
ERROR_NO_115 = 115
ERROR_NO_116 = 116
ERROR_NO_117 = 117
ERROR_NO_118 = 118
ERROR_NO_119 = 119
ERROR_NO_120 = 120
ERROR_NO_121 = 121
ERROR_NO_122 = 122
ERROR_NO_123 = 123
ERROR_NO_124 = 124
ERROR_NO_125 = 125
ERROR_NO_126 = 126
ERROR_NO_127 = 127
ERROR_NO_128 = 128
ERROR_NO_129 = 129
ERROR_NO_130 = 130
ERROR_NO_131 = 131
ERROR_NO_132 = 132
ERROR_NO_133 = 133
ERROR_NO_134 = 134
ERROR_NO_135 = 135
ERROR_NO_136 = 136
ERROR_NO_137 = 137
ERROR_NO_138 = 138
ERROR_NO_139 = 139
ERROR_NO_140 = 140
ERROR_NO_141 = 141
ERROR_NO_142 = 142
ERROR_NO_143 = 143
ERROR_NO_144 = 144
ERROR_NO_145 = 145
ERROR_NO_146 = 146
ERROR_NO_147 = 147
ERROR_NO_148 = 148
ERROR_NO_149 = 149
ERROR_NO_150 = 150
ERROR_NO_151 = 151
ERROR_NO_152 = 152
ERROR_NO_153 = 153
ERROR_NO_154 = 154
ERROR_NO_155 = 155
ERROR_NO_156 = 156
ERROR_NO_157 = 157
ERROR_NO_158 = 158
ERROR_NO_159 = 159
ERROR_NO_160 = 160
ERROR_NO_161 = 161
ERROR_NO_162 = 162
ERROR_NO_163 = 163
ERROR_NO_164 = 164
ERROR_NO_165 = 165
ERROR_NO_166 = 166
ERROR_NO_167 = 167
ERROR_NO_168 = 168
ERROR_NO_169 = 169
ERROR_NO_170 = 170
ERROR_NO_171 = 171
ERROR_NO_172 = 172
ERROR_NO_173 = 173
ERROR_NO_174 = 174
ERROR_NO_175 = 175
ERROR_NO_176 = 176
 
__errorDict =    \
{
    "fatal_1":(ERROR_NO_1, 'python version error!'),
    "fatal_2":(ERROR_NO_2, 'pymongo version error!'),
    "fatal_3":(ERROR_NO_3, 'mongodb version error!'),
    "fatal_4":(ERROR_NO_4, 'mongodb version error!'),  
    "error_5":(ERROR_NO_5, 'encode error'),
    "error_6":(ERROR_NO_6, 'encode error'),    
    "error_7":(ERROR_NO_7, 'python coding error'),
    "error_8":(ERROR_NO_8, 'python coding error'),
    "error_9":(ERROR_NO_9, 'python coding error'),
    "error_10":(ERROR_NO_10, 'invalid pos'),      
    "error_11":(ERROR_NO_11, 'lack of data'),  
    "fatal_12":(ERROR_NO_12, 'invalid resource version no'),     
    "DeployError_13":(ERROR_NO_13, 'user db password is not correct!'),  
    "DeployError_14":(ERROR_NO_14, 'sys db password is not correct!'),  
    "DeployError_15":(ERROR_NO_15, 'log db password is not correct!'),  
    "fatal_16":(ERROR_NO_16, 'socket error'), 
    "fatal_17":(ERROR_NO_17, 'unknown error'),   
    "error_18":(ERROR_NO_18, 'read config error'), 
    "DeployError_19":(ERROR_NO_19, 'user db mongodb longin user name is empty'), 
    "DeployError_20":(ERROR_NO_20, 'decrypt userdb password error'),     
    "DeployError_21":(ERROR_NO_21, 'user db mongodb longin pwd is empty'),  
    "DeployError_22":(ERROR_NO_22, 'sys db mongodb longin user name is empty'),
    "DeployError_23":(ERROR_NO_23, 'Decrypt sysdb_pwd faied'),  
    "DeployError_24":(ERROR_NO_24, 'sys db mongodb longin pwd is empty'),      
    "DeployError_25":(ERROR_NO_25, 'log db mongodb longin user name is empty'),
    "DeployError_26":(ERROR_NO_26, 'Decrypt logdb_pwd faied'),  
    "DeployError_27":(ERROR_NO_27, 'log db mongodb longin pwd is empty'), 
    "error_28":(ERROR_NO_28, 'unknown error'),    
    "fatal_29":(ERROR_NO_29, 'Init config failed'),
    "DesignError_30":(ERROR_NO_30, 'read sysdb table failed'), 
    "fatal_31":(ERROR_NO_31, 'read sysdb table failed'), 
    "DesignError_32":(ERROR_NO_32, 'open sysdb table file failed'),  
    "DesignError_33":(ERROR_NO_33, 'read sysdb table failed'), 
    "DesignError_34":(ERROR_NO_34, 'open sysdb table file failed'), 
    "error_35":(ERROR_NO_35, 'seq fail'), 
    "error_36":(ERROR_NO_36, 'unknown error'), 
    "error_37":(ERROR_NO_37, 'DumpData:write data to file fail'),   
    "error_38":(ERROR_NO_38, 'DumpData:unknown error'),  
    "fatal_39":(ERROR_NO_39, 'unexpceted param error'),   
    "error_40":(ERROR_NO_40, 'GetEncodePsw£¡unknown error'),  
    "error_41":(ERROR_NO_41, 'LoginMongoDB£¡unknown error'),
    "error_42":(ERROR_NO_42, 'requestType error'),    
    "error_43":(ERROR_NO_43, 'pack not processed'),    
    "fatal_44":(ERROR_NO_44, 'fail to reconnect mongod'),                                                                                                                      
    "error_45":(ERROR_NO_45, '__requestProcess£¡unknown error'),  
    "error_46":(ERROR_NO_46, 'pack is none, program logic error'), 
    "error_47":(ERROR_NO_47, 'pack is too short'),    
    "error_48":(ERROR_NO_48, 'pack is not processed'),               
    "error_49":(ERROR_NO_49, 'insert SvrStatus failed'),    
    "error_50":(ERROR_NO_50, 'onCoinChangeLog!unknown error'),   
    "fatal_51":(ERROR_NO_51, 'unexpceted param error'), 
    "DesignError_52":(ERROR_NO_52, 'resource version file not found'),  
    "fatal_53":(ERROR_NO_53, 'OnGetGameData!unknown error'),      
    "DesignError_54":(ERROR_NO_54, 'load PyReadData.dll failed, may be not exist'),      
    "DesignError_55":(ERROR_NO_55, 'load py sysdb data, may be not exist'), 
    "DeployError_56":(ERROR_NO_56, 'mapServer SaveServer switch may be not open'),     
    "error_57":(ERROR_NO_57, 'load tagDSAccount failed'), 
    "error_58":(ERROR_NO_58, 'OnSavePlayerInfo handle the dismatch type'),     
    "error_59":(ERROR_NO_59, 'Player save data failed!'),   
    "error_60":(ERROR_NO_60, 'Player data crc error'),       
    "error_61":(ERROR_NO_61, 'updatePlayerAccState!pymongo.errors.OperationFailure'),
    "error_62":(ERROR_NO_62, 'onCreateRoleServerCheckIsHaveRole!unexpetcted exception'),
    "error_63":(ERROR_NO_63, 'onCreateRoleServerCheckPlayerExist!unexpetcted exception'),     
    "error_64":(ERROR_NO_64, 'onCreateRoleServerRequestCreateRole!unexpetcted exception'),
    "error_65":(ERROR_NO_65, 'insert tagDBPlayer failed'),  
    "error_66":(ERROR_NO_66, 'insert player failed'),      
    "error_67":(ERROR_NO_67, 'onGetPlayerDetail:unknown error'),      
    "error_68":(ERROR_NO_68, 'onGetPlayerDetail:unknown error'),       
    "error_69":(ERROR_NO_69, 'Player should not be leader of two familys'),  
    "error_70":(ERROR_NO_70, 'onGetPlayerDetail:KeyError'),  
    "fatal_71":(ERROR_NO_71, 'SERVER_DATA_VERSION_NO mismatch'),  
    "error_72":(ERROR_NO_72, 'crash data crc mismatch'),   
    "error_73":(ERROR_NO_73, 'crash data crc mismatch'),
    "error_74":(ERROR_NO_74, 'lack of gmcmd data'),
    "fatal_75":(ERROR_NO_75, 'Compress gameserver player data error'),  
    "fatal_76":(ERROR_NO_76, 'GAMESERVER_DATA_VERSION_NO mismatch'), 
    "error_77":(ERROR_NO_77, 'discompress gameserver data fail'),  
    "error_78":(ERROR_NO_78, 'short of gameServerWorldData'),  
    "error_79":(ERROR_NO_79, 'short of GameServerPlayerData'), 
    "error_80":(ERROR_NO_80, 'discompress gameserver data fail'),  
    "error_81":(ERROR_NO_81, 'short of gameServerWorldData'),      
    "error_82":(ERROR_NO_82, 'invalid player mail data'), 
    "error_83":(ERROR_NO_83, 'OnInsertAcc!unknown error'),     
    "error_84":(ERROR_NO_84, 'OnPlayerIDMarkDeleted!unknown error'),  
    "error_85":(ERROR_NO_85, 'OnGetCoin!unknown error'),   
    "error_86":(ERROR_NO_86, 'CheckUpdateC tagDSAccount failed!'),
    "error_87":(ERROR_NO_87, 'insert tagAccCoins failed'), 
    "error_88":(ERROR_NO_88, 'OnCoinChange!unknown error'),   
    "error_89":(ERROR_NO_89, 'OnCheckPlayerExist!unknown error'),
    "error_90":(ERROR_NO_90, 'save tagGMOper failed'), 
    "error_91":(ERROR_NO_91, 'lack of pack data'), 
    "error_92":(ERROR_NO_92, 'insert tagServerDataVersionNO failed'),         
    "error_93":(ERROR_NO_93, 'lack of pack data'),   
    "error_94":(ERROR_NO_94, 'tagDBMapServerInfo adoCheckUpdateEx failed'), 
    "error_95":(ERROR_NO_95, 'tagDBPlayerSaveCoinLog:lack of pack data'),
    "error_96":(ERROR_NO_96, 'OnUpdateTotalSavePoint!unknown error'), 
    "error_97":(ERROR_NO_97, 'OnGetPlayerMailState!unknown error'), 
    "error_98":(ERROR_NO_98, 'OnGetMailDetail!unknown error'),     
    "error_99":(ERROR_NO_99, 'OnGetPlayerMail!unknown error'),
    "error_100":(ERROR_NO_100, 'tagDBMailList_SaveSysMail lack of pack data'), 
    "error_101":(ERROR_NO_101, "OnAddPlayerMailByAccID: exist a same mailid"), 
    "error_102":(ERROR_NO_102, "OnAddPlayerMailByAccID!unknown error"),  
    "error_103":(ERROR_NO_103, "DeleteMail fail"),    
    "error_104":(ERROR_NO_104, "Delete Mail Item fail"), 
    "error_105":(ERROR_NO_105, "OnDeleteMail!unknown error"),    
    "error_106":(ERROR_NO_106, "load mail fail"), 
    "error_107":(ERROR_NO_107, "update mail fail"),    
    "error_108":(ERROR_NO_108, "OnUpdateMail!adoDeleteByIndex failed"),   
    "error_109":(ERROR_NO_109, "OnUpdateMail!unknown error"), 
    "error_110":(ERROR_NO_110, "OnQueryCanSendMail!unknown error"),                       
    "error_111":(ERROR_NO_111, "update tagAccIDSendPrize failed"),
    "error_112":(ERROR_NO_112, "update tagAccIDSendPrize failed"),   
    "error_113":(ERROR_NO_113, "OnAccIDSendPrize!unknown error"),            
    "error_114":(ERROR_NO_114, "OnCheckItemPrize!unknown error"),   
    "error_115":(ERROR_NO_115, "OnCheckLoadAcc!unknown error"),  
    "error_116":(ERROR_NO_116, "OnAddAccItem!unknown error"),  
    "error_117":(ERROR_NO_117, "UpdateTelLockState failed"),
    "error_118":(ERROR_NO_118, "OnUpdateTelLockState!unknown error"),
    "error_119":(ERROR_NO_119, "OnUpdateMTTUID failed"),             
    "error_120":(ERROR_NO_120, "OnUpdateMTTUID!unknown error"),  
    "error_121":(ERROR_NO_121, "OnUpdateAccAdult failed"),
    "error_122":(ERROR_NO_122, "OnUpdateAccAdult!unknown error"),    
    "error_123":(ERROR_NO_123, "OnAddExpiation!unknown error"),  
    "error_124":(ERROR_NO_124, "OnAddPetExpiation!unknown error"),  
    "error_125":(ERROR_NO_125, "lack of pack data"),
    "error_125":(ERROR_NO_126, "ServerMergeDeleteRole failed"),
    "error_127":(ERROR_NO_127, "OnServerMergeDeleteRole failed"),  
    "error_128":(ERROR_NO_128, "OnServerMergeUpdateAccState failed"),
    "error_129":(ERROR_NO_129, "OnServerMergeUpdateAccState!unknown error"),    
    "error_130":(ERROR_NO_130, "insert tagDBPlayerChangeNameLog failed"),   
    "error_131":(ERROR_NO_131, "OnServerMergeChangeName update failed"), 
    "error_132":(ERROR_NO_132, "OnServerMergeChangeName!unknown error"), 
    "error_133":(ERROR_NO_133, "Insert tagDBImpeach failed"), 
    "error_134":(ERROR_NO_134, "OnServerMergeChangeName!unknown error"), 
    "error_135":(ERROR_NO_135, "Invalid pack data"),
    "error_136":(ERROR_NO_136, "PackSign Error"),    
    "error_137":(ERROR_NO_137, "Pack too big"),
    "error_138":(ERROR_NO_138, "getVersionByIndex!IndexError"),
    "error_139":(ERROR_NO_139, "getMinorVersionByIndex!IndexError"),   
    "error_140":(ERROR_NO_140, "getLanguageVersionByIndex!IndexError"),       
    "DesignError_141":(ERROR_NO_141, "LoadVersionFile!IOError.Version file may be not exist"),    
    "fatal_142":(ERROR_NO_142, "LoadVersionFile!unknown error."),    
    "DesignError_143":(ERROR_NO_143, "not version in Version.chver file"),   
    "DesignError_144":(ERROR_NO_144, "version format error!"),
    "fatal_145":(ERROR_NO_145, "LoadVersions!unknown error"),
    "error_146":(ERROR_NO_146, "Insert failed"),
    "error_147":(ERROR_NO_147, "Lack of data"),         
    "error_148":(ERROR_NO_148, "ReadData!invalid data pos"),     
    "error_149":(ERROR_NO_149, "lack of data"),   
    "error_150":(ERROR_NO_150, "ReadData!invalid data pos"), 
    "error_151":(ERROR_NO_151, "lack of data"),
    "error_152":(ERROR_NO_152, "Insert failed"),         
    "error_153":(ERROR_NO_153, "Update failed"),  
    "error_154":(ERROR_NO_154, "UpdateEx failed"), 
    "error_155":(ERROR_NO_155, "adoDeleteByIndex failed"),   
    "DeployError_156":(ERROR_NO_156, 'Log4Me.dll not found!'),  
    "warning_157":(ERROR_NO_157, "PyReadData.dll not found!"),   
    "error_158":(ERROR_NO_158, "CEventShellProxy InitDll Fail!"), 
    "warning_159":(ERROR_NO_159, "CEventShellProxy SendEvent Fail!"),
    "error_160":(ERROR_NO_160, "CEventShellProxy DeInitDll Fail!"), 
    "error_161":(ERROR_NO_161, "#PythonError#Call EventProcess.OnDayProcess() Fail!!"), 
    "DeployError_162":(ERROR_NO_162, "TDateTimeFunc.dll not found!!"),
    "DeployError_163":(ERROR_NO_163, "Open LogDB_EventShell_Save,But EventShell not Enable!!"),
    "fatal_164":(ERROR_NO_164, "Open file failed!!"),
    "fatal_165":(ERROR_NO_165, "Eval failed!!"),
    "fatal_166":(ERROR_NO_166, "unexpected index!!"),
    "fatal_167":(ERROR_NO_167, "unmatched index!!"),
    "fatal_168":(ERROR_NO_168, "create index failed!!"),
    "fatal_169":(ERROR_NO_169, "Application path contain non-anscii characters!"),
    "error_170":(ERROR_NO_170, "error in OnQueryNewGuyCardState"),
    "error_171":(ERROR_NO_171, "error in onCheckUpdateNewGuyCardState"), 
    "error_172":(ERROR_NO_172, "error OnGMToolCommand"),  
    "DeployError_173":(ERROR_NO_173, "GMTool DeployError"),
    "fatal_174":(ERROR_NO_174, "Init status report client failed!"),
    "error_175":(ERROR_NO_175, "Exception in OnMergeRegisterPlayer"),
    "error_176":(ERROR_NO_176, "Unknown exception in OnMergeRegisterPlayer"),
}
 
SHOW_ERROR_IF_DEBUG = 1
SHOW_ERROR_IF_RELEASE = 2
SHOW_ERROR_ALL = 3
 
def formatMsg(type, ID, info):
    global __errorDict
    error = __errorDict.get('%s_%s'%(type, ID))
    if len(error) < 2:
        return 'Unknown Error'
    return 'ID    :#%s\r\nMsg   :%s\r\nDetail:%s'%(error[0], error[1], info)