config.go 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. // Copyright 2019 getensh.com. All rights reserved.
  2. // Use of this source code is governed by getensh.com.
  3. package config
  4. type LogConfig struct {
  5. Path string
  6. Level string
  7. MaxSize int
  8. MaxBackups int
  9. MaxAge int
  10. Stacktrace bool
  11. }
  12. type MysqlConfig struct {
  13. User string
  14. Password string
  15. Addr string
  16. DB string
  17. Charset string
  18. MaxIdle int
  19. MaxConn int
  20. LogMode bool
  21. }
  22. type RedisConfig struct {
  23. Addrs []string
  24. Password string
  25. DB int
  26. PoolSize int
  27. MinIdleConns int
  28. MaxRetries int
  29. Cluster bool
  30. }
  31. type ElasticConfig struct {
  32. Addrs []string
  33. Sniff bool
  34. }
  35. type ThirdPartNode struct {
  36. Host string
  37. AppKey string
  38. AppSecret string
  39. }
  40. type AliPartNode struct {
  41. AesKey string
  42. }
  43. type ThirdPartyConfig struct {
  44. Ali AliPartNode
  45. }
  46. type RPCNode struct {
  47. ServiceName string
  48. ServicePort int
  49. ServiceIp string
  50. MysqlDb string
  51. RedisDb int
  52. LogLevel string
  53. LogStacktrace bool
  54. }
  55. type KeepaliveConfig struct {
  56. ClientTime int
  57. ClientTimeout int
  58. ServerTime int
  59. ServerTimeout int
  60. ServerMiniTime int
  61. }
  62. type OssConfig struct {
  63. Protocol string
  64. Endpoint string
  65. Id string
  66. Key string
  67. PropertyCompanyBucket string
  68. PowerTempUrl string
  69. BuidingTempUrl string
  70. UnitTempUrl string
  71. HouseTempUrl string
  72. FixBucket string
  73. RentObj string
  74. VoteObj string
  75. EventObj string
  76. }
  77. type Coupon struct {
  78. Url string
  79. Action string
  80. ExpireDate string
  81. }
  82. type RPCConfig struct {
  83. Keepalive KeepaliveConfig
  84. Common RPCNode
  85. Prefix string
  86. }
  87. type Configure struct {
  88. // 基础配置
  89. K8s bool
  90. RunMode string
  91. EtcdAddrs []string
  92. Log LogConfig
  93. // 按需配置
  94. Mysql MysqlConfig
  95. Redis RedisConfig
  96. Elastic ElasticConfig
  97. ThirdParty ThirdPartyConfig
  98. Oss OssConfig
  99. // 所要启用的服务
  100. Rpc RPCConfig
  101. }