config.go 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. // Copyright 2019 github.com. All rights reserved.
  2. // Use of this source code is governed by github.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 ThirdPartConfig struct {
  41. PartName ThirdPartNode
  42. }
  43. type RPCNode struct {
  44. ServiceName string
  45. ServicePort int
  46. ServiceIp string
  47. MysqlDb string
  48. RedisDb int
  49. LogLevel string
  50. LogStacktrace bool
  51. }
  52. type KeepaliveConfig struct {
  53. ClientTime int
  54. ClientTimeout int
  55. ServerTime int
  56. ServerTimeout int
  57. ServerMiniTime int
  58. }
  59. type RPCConfig struct {
  60. Keepalive KeepaliveConfig
  61. SmartAuth RPCNode
  62. SmartAlarm RPCNode
  63. SmartThirdparty RPCNode
  64. SmartProvincial RPCNode
  65. //DustMonitor RPCNode
  66. }
  67. type OssConfig struct {
  68. Protocol string
  69. UseSsl bool
  70. Endpoint string
  71. Id string
  72. Key string
  73. DustBucket string
  74. }
  75. type InfluxdbConfig struct {
  76. Addr string
  77. Username string
  78. Password string
  79. }
  80. type GatewayConfig struct {
  81. ServiceName string
  82. ServiceIp string
  83. ServicePort int
  84. GatewayIp string
  85. GatewayPort int
  86. MysqlDb string
  87. RedisDb int
  88. LogLevel string
  89. LogStacktrace bool
  90. }
  91. type Configure struct {
  92. // 基础配置
  93. //LocalMode bool
  94. K8s bool
  95. RunMode string
  96. Log LogConfig
  97. Mysql MysqlConfig
  98. // 按需配置
  99. Influxdb InfluxdbConfig
  100. // 所要启用的服务
  101. Rpc RPCConfig
  102. DustMonitor GatewayConfig
  103. Oss OssConfig
  104. ChannelSnapUrl string
  105. }