config.py 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. import os
  2. class BaseConfig(object):
  3. # creativeId对应Thompson参数结果存放 redis key 前缀,完整格式:thompson:param:{creative_id}
  4. THOMPSON_PARAM_KEY_PREFIX = 'thompson:param:'
  5. # creativeId对应cvr结果存放 redis key 前缀,完整格式:creative:cvr:{creativeId}
  6. CREATIVE_CVR_KEY_PREFIX = 'creative:cvr:'
  7. # 默认权重
  8. CREATIVE_WEIGHT_INITIAL = 100
  9. WEIGHT_GRADIENT = 10
  10. class TestConfig(BaseConfig):
  11. """测试环境配置"""
  12. # 日志服务配置
  13. ALIYUN_LOG = {
  14. 'ENDPOINT': 'cn-hangzhou-intranet.log.aliyuncs.com',
  15. 'ACCESSID': 'LTAIWYUujJAm7CbH',
  16. 'ACCESSKEY': 'RfSjdiWwED1sGFlsjXv0DlfTnZTG1P',
  17. 'PROJECT': 'algo-ad-server-test',
  18. }
  19. # 测试环境redis地址
  20. REDIS_INFO = {
  21. 'host': 'r-bp1ps6my7lzg8rdhwx682.redis.rds.aliyuncs.com',
  22. 'port': 6379,
  23. 'password': 'Wqsd@2019',
  24. }
  25. class PreProductionConfig(BaseConfig):
  26. """预发布环境配置"""
  27. # 日志服务配置
  28. ALIYUN_LOG = {
  29. 'ENDPOINT': 'cn-hangzhou-intranet.log.aliyuncs.com',
  30. 'ACCESSID': 'LTAIWYUujJAm7CbH',
  31. 'ACCESSKEY': 'RfSjdiWwED1sGFlsjXv0DlfTnZTG1P',
  32. 'PROJECT': 'algo-ad-server',
  33. }
  34. # 预发布环境redis地址
  35. REDIS_INFO = {
  36. 'host': 'r-bp1yup71yo02ki3yb5.redis.rds.aliyuncs.com',
  37. 'port': 6379,
  38. 'password': 'Wqsd@2019',
  39. }
  40. class ProductionConfig(BaseConfig):
  41. """生产环境配置"""
  42. # 日志服务配置
  43. ALIYUN_LOG = {
  44. 'ENDPOINT': 'cn-hangzhou-intranet.log.aliyuncs.com',
  45. 'ACCESSID': 'LTAIWYUujJAm7CbH',
  46. 'ACCESSKEY': 'RfSjdiWwED1sGFlsjXv0DlfTnZTG1P',
  47. 'PROJECT': 'algo-ad-server',
  48. }
  49. # 生产环境redis地址
  50. REDIS_INFO = {
  51. 'host': 'r-bp1yup71yo02ki3yb5.redis.rds.aliyuncs.com',
  52. 'port': 6379,
  53. 'password': 'Wqsd@2019',
  54. }
  55. def set_config():
  56. # 获取环境变量 AD_SERVER_ENV
  57. env = os.environ.get('AD_SERVER_ENV')
  58. # env = 'test'
  59. if env is None:
  60. # log_.error('ENV ERROR: is None!')
  61. return
  62. if env == 'test':
  63. return TestConfig()
  64. elif env == 'pre':
  65. return PreProductionConfig()
  66. elif env == 'pro':
  67. return ProductionConfig()
  68. else:
  69. # log_.error('ENV ERROR: is {}'.format(env))
  70. return