Compare commits

...

4 Commits

Author SHA1 Message Date
12f80d3ef2 update 2020-11-13 18:23:32 +08:00
ce92bd68dc update 2020-11-13 17:13:22 +08:00
d2e821c861 update 2020-11-13 16:15:00 +08:00
ccc0859f12 从环境变量获取mongo连接 2020-11-13 15:38:30 +08:00
6 changed files with 39 additions and 7 deletions

1
.gitignore vendored
View File

@ -130,4 +130,5 @@ dmypy.json
.pyre/
.idea
Pipfile.lock

15
Pipfile Normal file
View File

@ -0,0 +1,15 @@
[[source]]
url = "https://pypi.douban.com/simple"
verify_ssl = true
name = "pypi"
[packages]
kafka-python = "*"
arrow = "*"
pymongo = "*"
loguru = "*"
[dev-packages]
[requires]
python_version = "3.8"

View File

@ -11,3 +11,9 @@ export xlegudata_env="production"
```
### 创建python环境
```shell
pipenv Pipfile
```

View File

@ -1,3 +1,5 @@
from loguru import logger
from .handle_event import HandlerEvent
from .handle_paylist import HandlerPaylist
from .handle_user import HandlerUser
@ -11,5 +13,8 @@ HANDLER_DICT = {
def handle_factory(data):
type_ = data['type']
obj = HANDLER_DICT[type_](data)
return obj
obj = HANDLER_DICT.get(type_)
if not obj:
logger.warning(f'未知类型{type_}')
return
return obj(data)

View File

@ -36,6 +36,8 @@ def main():
st = time.time() * 1000
data = msg.value
obj = handle_factory(data)
if not obj:
continue
obj.run()
logger.debug(time.time() * 1000 - st)

View File

@ -3,9 +3,6 @@ import os
import pymongo
from loguru import logger
logger.add('log.log', format="{time} {level} {name}:{line} {message}", level="INFO",
rotation="100 MB", retention='7 days',
enqueue=True)
class Config:
@ -17,8 +14,7 @@ class Config:
'consumer_id': 'geshouccs_consumer'
}
# local_mongo_uri = os.environ["local_mongo_uri"]
local_mongo_uri = 'mongodb://root:iamciniao@127.0.0.1:27017/?authSource=admin&readPreference=primary&ssl=false'
local_mongo_uri = os.environ["local_mongo_uri"]
mdb_clint = pymongo.MongoClient(local_mongo_uri)
mydb = mdb_clint["admin_game"]
admin_game_coll = mydb['game']
@ -27,9 +23,16 @@ class Config:
class Production(Config):
DB_PREFIX = 'game'
logger.add('log.log', format="{time} {level} {name}:{line} {message}", level="INFO",
rotation="100 MB", retention='7 days',
enqueue=True)
class Debug(Config):
DB_PREFIX = 'debug'
logger.add('log.log', format="{time} {level} {name}:{line} {message}", level="DEBUG",
rotation="100 MB", retention='7 days',
enqueue=True)
settings = Production if os.environ.get('xlegudata_env') == 'production' else Debug