openreplay/backend/internal/config/connector/config.go
Alexander 45c956c489
Json logs format (#1952)
* feat(backend): try a new approach for logs formatting (http)

* feat(backend): added logger module

* feat(backend): added project/session info to /i endpoint

* feat(backend): found a solution for correct caller information

* feat(backend): finished logs for http handlers

* feat(backend): finished logs for mobile http handlers

* feat(backend): finished ender

* feat(backend): finished assets

* feat(backend): finished heuristics

* feat(backend): finished image-storage

* feat(backend): finished sink

* feat(backend): finished storage

* feat(backend): formatted logs in all services

* feat(backend): finished foss part

* feat(backend): added missed foss part

* feat(backend): fixed panic in memory manager and sink service

* feat(backend): connectors
2024-03-14 12:51:14 +01:00

34 lines
1.1 KiB
Go

package connector
import (
"openreplay/backend/internal/config/common"
"openreplay/backend/internal/config/configurator"
"openreplay/backend/internal/config/objectstorage"
"openreplay/backend/internal/config/redis"
"openreplay/backend/pkg/logger"
"time"
)
type Config struct {
common.Config
common.Postgres
redis.Redis
common.Redshift
common.Clickhouse
objectstorage.ObjectsConfig
ConnectorType string `env:"CONNECTOR_TYPE,default=redshift"`
SessionsTableName string `env:"SESSIONS_TABLE_NAME,default=connector_user_sessions"`
EventsTableName string `env:"EVENTS_TABLE_NAME,default=connector_events"`
EventLevel string `env:"EVENT_LEVEL,default=normal"`
GroupConnector string `env:"GROUP_CONNECTOR,default=connector"`
TopicRawWeb string `env:"TOPIC_RAW_WEB,required"`
TopicAnalytics string `env:"TOPIC_ANALYTICS,required"`
CommitBatchTimeout time.Duration `env:"COMMIT_BATCH_TIMEOUT,default=5s"`
UseProfiler bool `env:"PROFILER_ENABLED,default=false"`
}
func New(log logger.Logger) *Config {
cfg := &Config{}
configurator.Process(log, cfg)
return cfg
}