newlogger.go 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package hiedabke_alisls
  2. import "github.com/aliyun/aliyun-log-go-sdk/producer"
  3. func NewHiedaBackendAliSLS(cfg AliSLSConfig, extraAliSLSConfig *AliSLSConfigExtend) *HiedaBackendAliSLS {
  4. o := &HiedaBackendAliSLS{
  5. proj: cfg.Project,
  6. logstore: cfg.Logstore,
  7. topic: cfg.Topic,
  8. hostname: cfg.Hostname,
  9. appname: cfg.AppName,
  10. srcip: cfg.SourceIP,
  11. }
  12. alicfg := producer.GetDefaultProducerConfig()
  13. alicfg.Endpoint = cfg.Endpoint
  14. alicfg.AccessKeyID = cfg.AccessKeyID
  15. alicfg.AccessKeySecret = cfg.AccessKeySecret
  16. if extraAliSLSConfig != nil {
  17. alicfg.TotalSizeLnBytes = extraAliSLSConfig.TotalSizeLnBytes
  18. alicfg.MaxIoWorkerCount = extraAliSLSConfig.MaxIoWorkerCount
  19. alicfg.MaxBlockSec = extraAliSLSConfig.MaxBlockSec
  20. alicfg.MaxBatchSize = extraAliSLSConfig.MaxBatchSize
  21. alicfg.MaxBatchCount = extraAliSLSConfig.MaxBatchCount
  22. alicfg.LingerMs = extraAliSLSConfig.LingerMs
  23. alicfg.Retries = extraAliSLSConfig.Retries
  24. alicfg.MaxReservedAttempts = extraAliSLSConfig.MaxReservedAttempts
  25. alicfg.BaseRetryBackoffMs = extraAliSLSConfig.BaseRetryBackoffMs
  26. alicfg.MaxRetryBackoffMs = extraAliSLSConfig.MaxRetryBackoffMs
  27. alicfg.AdjustShargHash = extraAliSLSConfig.AdjustShargHash
  28. alicfg.Buckets = extraAliSLSConfig.Buckets
  29. alicfg.AllowLogLevel = extraAliSLSConfig.AllowLogLevel
  30. alicfg.LogFileName = extraAliSLSConfig.LogFileName
  31. alicfg.IsJsonType = extraAliSLSConfig.IsJsonType
  32. alicfg.LogMaxSize = extraAliSLSConfig.LogMaxSize
  33. alicfg.LogMaxBackups = extraAliSLSConfig.LogMaxBackups
  34. alicfg.LogCompress = extraAliSLSConfig.LogCompress
  35. alicfg.NoRetryStatusCodeList = extraAliSLSConfig.NoRetryStatusCodeList
  36. } else {
  37. if cfg.DebugMode {
  38. alicfg.AllowLogLevel = "debug"
  39. } else {
  40. alicfg.AllowLogLevel = "error"
  41. }
  42. }
  43. o.prod = producer.InitProducer(alicfg)
  44. return o
  45. }