Ankit Nayan be5d1f0090
feat: adding disable and anonymous functionality to telemetry collected (#637)
* chore: changed lib

* chore: changed lib

* chore: changed lib

* chore: changed lib

* chore: changes in params

* chore: changes in params

* chore: moving telemetry to a separate package

* feat: enabling telemetry via env var

* chore: removing posthog api_key

* feat: send heartbeat every 6hr

* feat: enabled version in application

* feat: added getter and setter apis and struct for user preferences

* feat: added version to properties to event

* feat: added apis to set and get user preferences and get version

* chore: refactored get and set userPreferences apis to dao pattern

* chore: added checks for telemetry enabled and anonymous during initialization

* chore: changed anonymous user functionality

* chore: sanitization

* chore: added uuid for userPreferences to send when user is anonymous
2022-01-26 21:40:44 +05:30

27 lines
526 B
Go

package dao
import (
"fmt"
"go.signoz.io/query-service/constants"
"go.signoz.io/query-service/dao/interfaces"
"go.signoz.io/query-service/dao/sqlite"
)
func FactoryDao(engine string) (*interfaces.ModelDao, error) {
var i interfaces.ModelDao
var err error
switch engine {
case "sqlite":
i, err = sqlite.InitDB(constants.RELATIONAL_DATASOURCE_PATH)
if err != nil {
return nil, err
}
default:
return nil, fmt.Errorf("RelationalDB type: %s is not supported in query service", engine)
}
return &i, nil
}