env.go 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package base
  2. import "os"
  3. // env list
  4. const (
  5. ENV_DEV = "dev"
  6. ENV_TEST = "test"
  7. ENV_PRODUCT = "product"
  8. LOCATION_SAAS = "saas"
  9. LOCATION_LOCAL = "local"
  10. LOCATION_FANGZHEN = "fangzhen"
  11. )
  12. // GetSrgEnv for API
  13. func GetJHYEnv() (env string) {
  14. env = os.Getenv("JHY_ENV")
  15. if env != "" {
  16. return env
  17. }
  18. return ENV_DEV
  19. }
  20. // GetSrgLocation for API
  21. func GetJHYLocation() (location string) {
  22. location = os.Getenv("JHY_LOCATION")
  23. if location != "" {
  24. return location
  25. }
  26. return LOCATION_LOCAL
  27. }
  28. // IsCliENV for API
  29. func IsCliENV() bool {
  30. if GetJHYEnv() != ENV_PRODUCT {
  31. return true
  32. }
  33. cron := os.Getenv("JHY_CLI")
  34. return cron == "true"
  35. }
  36. // IsPprofEnv for API
  37. func IsPprofEnv() bool {
  38. if GetJHYEnv() == ENV_DEV {
  39. return true
  40. }
  41. if os.Getenv("JHY_PPROF") == "true" {
  42. return true
  43. }
  44. return false
  45. }
  46. // GetServiceName for API
  47. func GetServiceName() (env string) {
  48. env = os.Getenv("JHY_SERVICE")
  49. if env != "" {
  50. return env
  51. }
  52. return "unknown"
  53. }
  54. // GetHostName for API
  55. func GetHostName() string {
  56. hostname, err := os.Hostname()
  57. // not has hostname? how
  58. if err != nil {
  59. // todo set machine id
  60. return ""
  61. }
  62. return hostname
  63. }