db

package
v0.2.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 15, 2022 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	AlarmStatusClose = iota + 1
	AlarmStatusOpen
	AlarmStatusFiring
)
View Source
const (
	TableMogoAlarm                = "mogo_alarm"
	TableNameUser                 = "mogo_user"
	TableMogoEvent                = "mogo_event"
	TableNameK8SConfigMap         = "mogo_k8s_cm"
	TableNameCluster              = "mogo_cluster"
	TableNameView                 = "mogo_base_view"
	TableNameTable                = "mogo_base_table"
	TableNameIndex                = "mogo_base_index"
	TableMogoAlarmFilter          = "mogo_alarm_filter"
	TableNameDatabase             = "mogo_base_database"
	TableNameInstance             = "mogo_base_instance"
	TableNameConfiguration        = "mogo_configuration"
	TableMogoAlarmHistory         = "mogo_alarm_history"
	TableMogoAlarmChannel         = "mogo_alarm_channel"
	TableMogoAlarmCondition       = "mogo_alarm_condition"
	TableNameConfigurationHistory = "mogo_configuration_history"
	TableNameConfigurationPublish = "mogo_configuration_publish"
)
View Source
const (
	ClusterStatusNormal = iota
	ClusterStatusMaintaining
	ClusterStatusNotAvailable
)

status of kubernetes cluster

View Source
const (
	OpnLocalUsersPwdChange = "local_user_pwd_change"

	OpnMigration = "system_setting_migration"

	OpnTablesDelete         = "opn_tables_delete"
	OpnTablesCreate         = "opn_tables_create"
	OpnTableCreateSelfBuilt = "opn_tables_create_self_built"
	OpnTablesUpdate         = "opn_tables_update"
	OpnTablesIndexUpdate    = "opn_tables_index_update"
	OpnTablesLogsQuery      = "opn_tables_logs_query"
	OpnDatabasesDelete      = "opn_databases_delete"
	OpnDatabasesCreate      = "opn_databases_create"
	OpnDatabasesUpdate      = "opn_databases_update"
	OpnInstancesDelete      = "opn_instances_delete"
	OpnInstancesCreate      = "opn_instances_create"
	OpnInstancesUpdate      = "opn_instances_update"
	OpnViewsDelete          = "opn_views_delete"
	OpnViewsCreate          = "opn_views_create"
	OpnViewsUpdate          = "opn_views_update"

	OpnConfigsDelete  = "opn_configs_delete"
	OpnConfigsCreate  = "opn_configs_create"
	OpnConfigsUpdate  = "opn_configs_update"
	OpnConfigsPublish = "opn_configs_publish"
	OpnConfigsSync    = "opn_configs_sync"

	OpnClustersDelete          = "opn_clusters_delete"
	OpnClustersCreate          = "opn_clusters_create"
	OpnClustersUpdate          = "opn_clusters_update"
	OpnClustersConfigMapDelete = "opn_clusters_config_map_delete"
	OpnClustersConfigMapCreate = "opn_clusters_config_map_create"
	OpnClustersConfigMapUpdate = "opn_clusters_config_map_update"

	OpnAlarmsDelete         = "opn_alarms_delete"
	OpnAlarmsCreate         = "opn_alarms_create"
	OpnAlarmsUpdate         = "opn_alarms_update"
	OpnAlarmsChannelsDelete = "opn_alarms_channels_delete"
	OpnAlarmsChannelsCreate = "opn_alarms_channels_create"
	OpnAlarmsChannelsUpdate = "opn_alarms_channels_update"
)

abbr. -> fullName "Opn" -> "Operation" "mgt" -> "management"

View Source
const (
	SourceInquiryMgtCenter = "inquiry_mgt"
	SourceUserMgtCenter    = "user_mgt"
	SourceSystemSetting    = "system_setting"
	SourceClusterMgtCenter = "cluster_mgt"
	SourceAlarmMgtCenter   = "alarm_mgt"
	SourceConfigMgtCenter  = "config_mgt"
)
View Source
const (
	DatasourceMySQL      = "mysql"
	DatasourceClickHouse = "ch"
)
View Source
const (
	RuleStoreTypeFile = 1
	RuleStoreTypeK8s  = 2
)
View Source
const (
	TimeFieldTypeDT   = 0 // dateTime
	TimeFieldTypeTs   = 1 // unix seconds
	TimeFieldTypeTsMs = 2 // unix ms
)
View Source
const TimeFieldNanoseconds = "_time_nanosecond_"
View Source
const TimeFieldSecond = "_time_second_"

Variables

View Source
var OperationMap = map[string]string{
	OpnLocalUsersPwdChange: "Change the password",

	OpnTablesDelete:         "Table delete",
	OpnTablesCreate:         "Table create",
	OpnTablesUpdate:         "Table update",
	OpnTableCreateSelfBuilt: "An existing data table is connected",
	OpnTablesIndexUpdate:    "Table analysis field updates",
	OpnTablesLogsQuery:      "Log query",
	OpnDatabasesDelete:      "Database delete",
	OpnDatabasesCreate:      "Database create",
	OpnDatabasesUpdate:      "Database update",
	OpnInstancesDelete:      "Instance delete",
	OpnInstancesCreate:      "Instance create",
	OpnInstancesUpdate:      "Instance update",
	OpnViewsDelete:          "Custom time field delete",
	OpnViewsCreate:          "Custom time field create",
	OpnViewsUpdate:          "Custom time field update",

	OpnConfigsDelete:  "Config delete",
	OpnConfigsCreate:  "Config create",
	OpnConfigsUpdate:  "Config update",
	OpnConfigsPublish: "Config publish",
	OpnConfigsSync:    "Synchronize the configuration from the target cluster",

	OpnClustersDelete:          "Cluster delete",
	OpnClustersCreate:          "Cluster create",
	OpnClustersUpdate:          "Cluster update",
	OpnClustersConfigMapDelete: "Cluster configmap delete",
	OpnClustersConfigMapCreate: "Cluster configmap create",
	OpnClustersConfigMapUpdate: "Cluster configmap update",

	OpnAlarmsDelete:         "Alarm delete",
	OpnAlarmsCreate:         "Alarm create",
	OpnAlarmsUpdate:         "Alarm update",
	OpnAlarmsChannelsDelete: "Alarm channel delete",
	OpnAlarmsChannelsCreate: "Alarm channel create",
	OpnAlarmsChannelsUpdate: "Alarm channel update",

	OpnMigration: "The database table structure is upgraded",
}
View Source
var UnitMap = map[int]UnitItem{
	0: {
		Alias:    "m",
		Duration: time.Minute,
	},
	1: {
		Alias:    "s",
		Duration: time.Second,
	},
	2: {
		Alias:    "h",
		Duration: time.Hour,
	},
	3: {
		Alias:    "d",
		Duration: time.Hour * 24,
	},
	4: {
		Alias:    "w",
		Duration: time.Hour * 24 * 7,
	},
}

Functions

func AlarmChannelCreate added in v0.2.0

func AlarmChannelCreate(db *gorm.DB, data *AlarmChannel) (err error)

func AlarmChannelDelete added in v0.2.0

func AlarmChannelDelete(db *gorm.DB, id int) (err error)

func AlarmChannelDeleteBatch added in v0.2.0

func AlarmChannelDeleteBatch(db *gorm.DB, tid int) (err error)

func AlarmChannelUpdate added in v0.2.0

func AlarmChannelUpdate(db *gorm.DB, id int, ups map[string]interface{}) (err error)

func AlarmConditionCreate added in v0.2.0

func AlarmConditionCreate(db *gorm.DB, data *AlarmCondition) (err error)

func AlarmConditionDelete added in v0.2.0

func AlarmConditionDelete(db *gorm.DB, id int) (err error)

func AlarmConditionDeleteBatch added in v0.2.0

func AlarmConditionDeleteBatch(db *gorm.DB, alarmId int) (err error)

func AlarmConditionUpdate added in v0.2.0

func AlarmConditionUpdate(db *gorm.DB, id int, ups map[string]interface{}) (err error)

func AlarmCreate added in v0.2.0

func AlarmCreate(db *gorm.DB, data *Alarm) (err error)

func AlarmDelete added in v0.2.0

func AlarmDelete(db *gorm.DB, id int) (err error)

func AlarmDeleteBatch added in v0.2.0

func AlarmDeleteBatch(db *gorm.DB, tid int) (err error)

func AlarmFilterCreate added in v0.2.0

func AlarmFilterCreate(db *gorm.DB, data *AlarmFilter) (err error)

func AlarmFilterDelete added in v0.2.0

func AlarmFilterDelete(db *gorm.DB, id int) (err error)

func AlarmFilterDeleteBatch added in v0.2.0

func AlarmFilterDeleteBatch(db *gorm.DB, alarmId int) (err error)

func AlarmFilterUpdate added in v0.2.0

func AlarmFilterUpdate(db *gorm.DB, id int, ups map[string]interface{}) (err error)

func AlarmHistoryCreate added in v0.2.0

func AlarmHistoryCreate(db *gorm.DB, data *AlarmHistory) (err error)

func AlarmHistoryDelete added in v0.2.0

func AlarmHistoryDelete(db *gorm.DB, id int) (err error)

func AlarmHistoryDeleteBatch added in v0.2.0

func AlarmHistoryDeleteBatch(db *gorm.DB, tid int) (err error)

func AlarmHistoryUpdate added in v0.2.0

func AlarmHistoryUpdate(db *gorm.DB, id int, ups map[string]interface{}) (err error)

func AlarmStatusUpdate added in v0.2.0

func AlarmStatusUpdate(id int, status string) (err error)

func AlarmUpdate added in v0.2.0

func AlarmUpdate(db *gorm.DB, id int, ups map[string]interface{}) (err error)

func ClusterCreate

func ClusterCreate(db *gorm.DB, data *Cluster) (err error)

ClusterCreate CRUD

func ClusterDelete

func ClusterDelete(db *gorm.DB, id int) (err error)

ClusterDelete soft delete item by id

func ClusterUpdate

func ClusterUpdate(db *gorm.DB, paramId int, ups map[string]interface{}) (err error)

ClusterUpdate ...

func ClusterUpdateX

func ClusterUpdateX(db *gorm.DB, conds egorm.Conds, ups map[string]interface{}) (err error)

func ConfigurationCreate

func ConfigurationCreate(db *gorm.DB, data *Configuration) (err error)

ConfigurationCreate CRUD

func ConfigurationDelete

func ConfigurationDelete(db *gorm.DB, id int) (err error)

ConfigurationDelete 硬删除

func ConfigurationHistoryCreate

func ConfigurationHistoryCreate(db *gorm.DB, data *ConfigurationHistory) (err error)

ConfigurationHistoryCreate CRUD

func ConfigurationHistoryDelete

func ConfigurationHistoryDelete(db *gorm.DB, id int) (err error)

ConfigurationHistoryDelete soft delete item by id

func ConfigurationHistoryUpdate

func ConfigurationHistoryUpdate(db *gorm.DB, paramId int, ups map[string]interface{}) (err error)

ConfigurationHistoryUpdate ...

func ConfigurationPublishCreate

func ConfigurationPublishCreate(db *gorm.DB, data *ConfigurationPublish) (err error)

ConfigurationPublishCreate CRUD

func ConfigurationPublishDelete

func ConfigurationPublishDelete(db *gorm.DB, id int) (err error)

ConfigurationPublishDelete soft delete item by id

func ConfigurationPublishUpdate

func ConfigurationPublishUpdate(db *gorm.DB, paramId int, ups map[string]interface{}) (err error)

ConfigurationPublishUpdate ...

func ConfigurationUpdate

func ConfigurationUpdate(db *gorm.DB, paramId int, ups map[string]interface{}) (err error)

ConfigurationUpdate ...

func DatabaseCreate

func DatabaseCreate(db *gorm.DB, data *Database) (err error)

DatabaseCreate ...

func DatabaseDelete

func DatabaseDelete(db *gorm.DB, id int) (err error)

DatabaseDelete Soft delete

func DatabaseUpdate

func DatabaseUpdate(db *gorm.DB, paramId int, ups map[string]interface{}) (err error)

DatabaseUpdate ...

func GetAlarmTableInstanceInfo added in v0.2.0

func GetAlarmTableInstanceInfo(id int) (instanceInfo Instance, tableInfo Table, alarmInfo Alarm, err error)

func IndexCreate

func IndexCreate(db *gorm.DB, data *Index) (err error)

func IndexDelete

func IndexDelete(db *gorm.DB, id int) (err error)

func IndexDeleteBatch

func IndexDeleteBatch(db *gorm.DB, tid int) (err error)

func IndexUpdate

func IndexUpdate(db *gorm.DB, id int, ups map[string]interface{}) (err error)

func InstanceCreate

func InstanceCreate(db *gorm.DB, data *Instance) (err error)

func InstanceDelete

func InstanceDelete(db *gorm.DB, id int) (err error)

func InstanceKey

func InstanceKey(id int) string

func InstanceUpdate

func InstanceUpdate(db *gorm.DB, id int, ups map[string]interface{}) (err error)

func K8SConfigMapCreate

func K8SConfigMapCreate(db *gorm.DB, data *K8SConfigMap) (err error)

K8SConfigMapCreate CRUD

func K8SConfigMapDelete

func K8SConfigMapDelete(db *gorm.DB, id int) (err error)

K8SConfigMapDelete soft delete item by id

func K8SConfigMapUpdate

func K8SConfigMapUpdate(db *gorm.DB, paramId int, ups map[string]interface{}) (err error)

K8SConfigMapUpdate ...

func TableCreate

func TableCreate(db *gorm.DB, data *Table) (err error)

TableCreate ...

func TableDelete

func TableDelete(db *gorm.DB, id int) (err error)

TableDelete Soft delete

func TableUpdate

func TableUpdate(db *gorm.DB, paramId int, ups map[string]interface{}) (err error)

TableUpdate ...

func UserCreate

func UserCreate(db *gorm.DB, data *User) (err error)

UserCreate CRUD

func UserDelete

func UserDelete(db *gorm.DB, id int) (err error)

UserDelete soft delete item by id

func UserUpdate

func UserUpdate(db *gorm.DB, paramId int, ups map[string]interface{}) (err error)

UserUpdate ...

func ViewCreate

func ViewCreate(db *gorm.DB, data *View) (err error)

func ViewDelete

func ViewDelete(db *gorm.DB, id int) (err error)

ViewDelete Soft delete

func ViewDeleteByTableID

func ViewDeleteByTableID(db *gorm.DB, tid int) (err error)

ViewDeleteByTableID Soft delete

func ViewUpdate

func ViewUpdate(db *gorm.DB, paramId int, ups map[string]interface{}) (err error)

ViewUpdate ...

Types

type Alarm added in v0.2.0

type Alarm struct {
	BaseModel

	Tid           int           `gorm:"column:tid;type:int(11)" json:"tid"`                                                    // table id
	Uuid          string        `gorm:"column:uuid;type:varchar(128);NOT NULL" json:"uuid"`                                    // foreign key
	Name          string        `gorm:"column:name;type:varchar(128);NOT NULL" json:"alarmName"`                               // name of an alarm
	Desc          string        `gorm:"column:desc;type:varchar(255);NOT NULL" json:"desc"`                                    // description
	Interval      int           `gorm:"column:interval;type:int(11)" json:"interval"`                                          // interval second between alarm
	Unit          int           `gorm:"column:unit;type:int(11)" json:"unit"`                                                  // 0 m 1 s 2 h 3 d 4 w 5 y
	AlertRule     string        `gorm:"column:alert_rule;type:text" json:"alertRule"`                                          // prometheus alert rule
	View          string        `gorm:"column:view;type:text" json:"view"`                                                     // view table ddl
	ViewTableName string        `gorm:"column:view_table_name;type:varchar(255)" json:"viewTableName"`                         // name of view table
	Tags          String2String `gorm:"column:tag;type:text" json:"tag"`                                                       // tags
	Uid           int           `gorm:"column:uid;type:int(11)" json:"uid"`                                                    // uid of alarm operator
	Status        int           `gorm:"column:status;type:int(11)" json:"status"`                                              // status
	RuleStoreType int           `gorm:"column:rule_store_type" db:"rule_store_type" json:"ruleStoreType" form:"ruleStoreType"` // ruleStoreType
	ChannelIds    Ints          `gorm:"column:channel_ids;type:varchar(255);NOT NULL" json:"channelIds"`                       // channel of an alarm

	User *User `json:"user,omitempty" gorm:"foreignKey:Uid;references:ID"`
}

Alarm defines alarm table structure

func AlarmInfo added in v0.2.0

func AlarmInfo(db *gorm.DB, id int) (resp Alarm, err error)

func AlarmInfoX added in v0.2.0

func AlarmInfoX(db *gorm.DB, conds map[string]interface{}) (resp Alarm, err error)

func AlarmList added in v0.2.0

func AlarmList(conds egorm.Conds) (resp []*Alarm, err error)

func AlarmListByDidPage added in v0.2.0

func AlarmListByDidPage(conds egorm.Conds, reqList *ReqPage) (total int64, respList []*Alarm)

func AlarmListPage added in v0.2.0

func AlarmListPage(conds egorm.Conds, reqList *ReqPage) (total int64, respList []*Alarm)

AlarmListPage return item list by pagination

func (*Alarm) AlertInterval added in v0.2.0

func (m *Alarm) AlertInterval() string

func (*Alarm) AlertRuleName added in v0.2.0

func (m *Alarm) AlertRuleName() string

func (*Alarm) AlertUniqueName added in v0.2.1

func (m *Alarm) AlertUniqueName() string

func (*Alarm) AlertViewName added in v0.2.1

func (m *Alarm) AlertViewName(database, table string) string

func (*Alarm) TableName added in v0.2.0

func (m *Alarm) TableName() string

type AlarmChannel added in v0.2.0

type AlarmChannel struct {
	BaseModel

	Name string `gorm:"column:name;type:varchar(128);NOT NULL" json:"name"` // 告警渠道名称
	Key  string `gorm:"column:key;type:text" json:"key"`                    // 关键信息
	Typ  int    `gorm:"column:typ;type:int(11)" json:"typ"`                 // 告警类型:0 dd
	Uid  int    `gorm:"column:uid;type:int(11)" json:"uid"`                 // 操作人
}

AlarmChannel 告警渠道

func AlarmChannelInfo added in v0.2.0

func AlarmChannelInfo(db *gorm.DB, id int) (resp AlarmChannel, err error)

func AlarmChannelList added in v0.2.0

func AlarmChannelList(conds egorm.Conds) (resp []*AlarmChannel, err error)

func (*AlarmChannel) TableName added in v0.2.0

func (m *AlarmChannel) TableName() string

type AlarmCondition added in v0.2.0

type AlarmCondition struct {
	BaseModel

	AlarmId        int `gorm:"column:alarm_id;type:int(11)" json:"alarmId"`              // alarm id
	SetOperatorTyp int `gorm:"column:set_operator_typ;type:int(11);NOT NULL" json:"typ"` // 0 WHEN 1 AND 2 OR
	SetOperatorExp int `gorm:"column:set_operator_exp;type:int(11);NOT NULL" json:"exp"` // 0 avg 1 min 2 max 3 sum 4 count
	Cond           int `gorm:"column:cond;type:int(11)" json:"cond"`                     // 0 above 1 below 2 outside range 3 within range
	Val1           int `gorm:"column:val_1;type:int(11)" json:"val1"`                    // 基准值/最小值
	Val2           int `gorm:"column:val_2;type:int(11)" json:"val2"`                    // 最大值
}

AlarmCondition 告警触发条件

func AlarmConditionInfo added in v0.2.0

func AlarmConditionInfo(db *gorm.DB, id int) (resp AlarmCondition, err error)

func AlarmConditionList added in v0.2.0

func AlarmConditionList(conds egorm.Conds) (resp []*AlarmCondition, err error)

func (*AlarmCondition) TableName added in v0.2.0

func (m *AlarmCondition) TableName() string

type AlarmFilter added in v0.2.0

type AlarmFilter struct {
	BaseModel

	Tid            int    `gorm:"column:tid;type:int(11)" json:"tid"`                            // table id
	AlarmId        int    `gorm:"column:alarm_id;type:int(11)" json:"alarmId"`                   // alarm id
	When           string `gorm:"column:when;type:text" json:"when"`                             // 执行条件
	SetOperatorTyp int    `gorm:"column:set_operator_typ;type:int(11);NOT NULL" json:"typ"`      // 0 default 1 INNER 2 LEFT OUTER 3 RIGHT OUTER 4 FULL OUTER 5 CROSS
	SetOperatorExp string `gorm:"column:set_operator_exp;type:varchar(255);NOT NULL" json:"exp"` // 操作
}

AlarmFilter 告警过滤条件

func AlarmFilterInfo added in v0.2.0

func AlarmFilterInfo(db *gorm.DB, id int) (resp AlarmFilter, err error)

func AlarmFilterList added in v0.2.0

func AlarmFilterList(conds egorm.Conds) (resp []*AlarmFilter, err error)

func (*AlarmFilter) TableName added in v0.2.0

func (m *AlarmFilter) TableName() string

type AlarmHistory added in v0.2.0

type AlarmHistory struct {
	BaseModel

	AlarmId  int `gorm:"column:alarm_id;type:int(11)" json:"alarmId"`   // alarm id
	IsPushed int `gorm:"column:is_pushed;type:int(11)" json:"isPushed"` // alarm id
}

AlarmHistory 告警渠道

func AlarmHistoryInfo added in v0.2.0

func AlarmHistoryInfo(db *gorm.DB, id int) (resp AlarmHistory, err error)

func AlarmHistoryList added in v0.2.0

func AlarmHistoryList(conds egorm.Conds) (resp []*AlarmHistory, err error)

func AlarmHistoryPage added in v0.2.0

func AlarmHistoryPage(conds egorm.Conds, reqList *ReqPage) (total int64, respList []*AlarmHistory)

func (*AlarmHistory) TableName added in v0.2.0

func (m *AlarmHistory) TableName() string

type BaseModel

type BaseModel struct {
	ID    int               `gorm:"not null;primary_key;AUTO_INCREMENT" json:"id"`
	Ctime int64             `gorm:"bigint;autoCreateTime;comment:创建时间" json:"ctime"`
	Utime int64             `gorm:"bigint;autoUpdateTime;comment:更新时间" json:"utime"`
	Dtime sdelete.DeletedAt `gorm:"bigint;comment:删除时间" json:"dtime"`
}

type Cluster

type Cluster struct {
	BaseModel

	Name        string `gorm:"column:name;type:varchar(255);NOT NULL;index:uix_cluster_name,unique" json:"clusterName"` // unique name of cluster
	Description string `gorm:"column:description;type:varchar(128)" json:"description"`                                 // brief description of cluster
	Status      int    `gorm:"column:status;type:tinyint(1)" json:"status"`                                             // 0 means Well-Running, others mean not running
	ApiServer   string `gorm:"column:api_server;type:varchar(255);NOT NULL" json:"apiServer"`                           // address of cluster API server
	KubeConfig  string `gorm:"column:kube_config;type:mediumtext;NOT NULL" json:"kubeConfig"`                           // raw content of kube config
}

func ClusterInfo

func ClusterInfo(paramId int) (resp Cluster, err error)

func ClusterInfoX

func ClusterInfoX(db *gorm.DB, conds map[string]interface{}) (resp Cluster, err error)

ClusterInfoX get single item by condition

func ClusterList

func ClusterList(conds egorm.Conds) (resp []*Cluster, err error)

ClusterList return item list by condition

func ClusterListHideSensitiveInfo

func ClusterListHideSensitiveInfo(conds egorm.Conds) (resp []*Cluster, err error)

func ClusterListPage

func ClusterListPage(conds egorm.Conds, reqList *ReqPage) (total int64, respList []*Cluster)

ClusterListPage return item list by pagination

func ClusterNormalInfo

func ClusterNormalInfo(paramId int) (resp Cluster, err error)

func ClusterNormalList

func ClusterNormalList(conds egorm.Conds) (resp []*Cluster, err error)

func GetAllNormalClusters

func GetAllNormalClusters() (result []*Cluster, err error)

GetAllNormalClusters 获取当前所有未删除且状态正常的clusters; 主要供后端调用.

func (*Cluster) Key

func (m *Cluster) Key() string

func (*Cluster) TableName

func (m *Cluster) TableName() string

type Configuration

type Configuration struct {
	BaseModel

	K8SCmId     int    `gorm:"column:k8s_cm_id;type:int(11);index:uix_k8s_cm_id_name,unique" json:"k8sConfigmapId"` // config map id
	Name        string `gorm:"column:name;type:varchar(64);index:uix_k8s_cm_id_name,unique" json:"name"`
	Content     string `gorm:"column:content;type:longtext" json:"content"`
	Format      string `gorm:"column:format;type:varchar(32)" json:"format"`
	Version     string `gorm:"column:version;type:varchar(64)" json:"version"`
	Uid         int    `gorm:"column:uid;type:int(11) unsigned" json:"uid"`
	PublishTime int64  `gorm:"column:publish_time;type:int(11)" json:"publishTime"`
	LockUid     int    `gorm:"column:lock_uid;type:int(11) unsigned" json:"lockUid"`
	LockAt      int64  `gorm:"column:lock_at;type:datetime" json:"lockAt"`

	K8SConfigMap K8SConfigMap `gorm:"foreignKey:ID" json:"-"`
}

func ConfigurationInfo

func ConfigurationInfo(paramId int) (resp Configuration, err error)

func ConfigurationInfoX

func ConfigurationInfoX(conds map[string]interface{}) (resp Configuration, err error)

ConfigurationInfoX Info extension method to query a single record according to Cond

func ConfigurationList

func ConfigurationList(conds egorm.Conds) (resp []*Configuration, err error)

ConfigurationList return item list by condition

func ConfigurationListPage

func ConfigurationListPage(conds egorm.Conds, reqList *ReqPage) (total int64, respList []*Configuration)

ConfigurationListPage return item list by pagination

func (Configuration) FileName

func (c Configuration) FileName() string

FileName ..

func (*Configuration) TableName

func (c *Configuration) TableName() string

type ConfigurationHistory

type ConfigurationHistory struct {
	BaseModel
	Uid             int    `gorm:"column:uid;type:int(11) unsigned" json:"uid"`
	ConfigurationId int    `gorm:"column:configuration_id;type:int(11) unsigned" json:"configurationId"`
	ChangeLog       string `gorm:"column:change_log;type:longtext" json:"changeLog"`
	Content         string `gorm:"column:content;type:longtext" json:"content"`
	Version         string `gorm:"column:version;type:varchar(64)" json:"version"`

	User          User          `json:"user,omitempty" gorm:"foreignKey:Uid;references:ID"`
	Configuration Configuration `json:"configuration,omitempty" gorm:"foreignKey:ConfigurationId;references:ID"`
}

func ConfigurationHistoryInfo

func ConfigurationHistoryInfo(paramId int) (resp ConfigurationHistory, err error)

func ConfigurationHistoryInfoX

func ConfigurationHistoryInfoX(conds map[string]interface{}) (resp ConfigurationHistory, err error)

ConfigurationHistoryInfoX get single item by condition

func ConfigurationHistoryList

func ConfigurationHistoryList(conds egorm.Conds) (resp []*ConfigurationHistory, err error)

ConfigurationHistoryList return item list by condition

func ConfigurationHistoryListPage

func ConfigurationHistoryListPage(conds egorm.Conds, reqList *ReqPage) (total int64, respList []*ConfigurationHistory)

ConfigurationHistoryListPage return item list by pagination

func (*ConfigurationHistory) TableName

func (m *ConfigurationHistory) TableName() string

type ConfigurationPublish

type ConfigurationPublish struct {
	BaseModel

	Uid                    uint `gorm:"column:uid;type:int(11) unsigned" json:"uid"`
	ConfigurationId        uint `gorm:"column:configuration_id;type:int(11) unsigned" json:"configurationId"`
	ConfigurationHistoryId uint `gorm:"column:configuration_history_id;type:int(11) unsigned" json:"configurationHistoryId"`
}

func ConfigurationPublishInfo

func ConfigurationPublishInfo(paramId int) (resp ConfigurationPublish, err error)

func ConfigurationPublishList

func ConfigurationPublishList(conds egorm.Conds) (resp []*ConfigurationPublish, err error)

ConfigurationPublishList return item list by condition

func ConfigurationPublishListPage

func ConfigurationPublishListPage(conds egorm.Conds, reqList *ReqPage) (total int64, respList []*ConfigurationPublish)

ConfigurationPublishListPage return item list by pagination

func (*ConfigurationPublish) TableName

func (m *ConfigurationPublish) TableName() string

type Database

type Database struct {
	BaseModel

	Iid            int    `gorm:"column:iid;type:int(11);index:uix_iid_name,unique" json:"iid"`                 // datasource instance id
	Name           string `gorm:"column:name;type:varchar(128);index:uix_iid_name,unique;NOT NULL" json:"name"` // datasource database name
	Uid            int    `gorm:"column:uid;type:int(11)" json:"uid"`                                           // datasource operator uid
	Cluster        string `gorm:"column:cluster;type:varchar(128);NOT NULL" json:"cluster"`                     // cluster
	IsCreateByMogo int    `gorm:"column:is_create_by_mogo;type:tinyint(1)" json:"isCreateByMogo"`

	Instance *Instance `json:"instance,omitempty" gorm:"foreignKey:Iid;references:ID"`
}

Database 数据库管理

func DatabaseGetOrCreate added in v0.2.0

func DatabaseGetOrCreate(db *gorm.DB, uid, iid int, name string) (resp Database, err error)

func DatabaseInfo

func DatabaseInfo(db *gorm.DB, paramId int) (resp Database, err error)

func DatabaseInfoX

func DatabaseInfoX(db *gorm.DB, conds map[string]interface{}) (resp Database, err error)

DatabaseInfoX Info extension method to query a single record according to Cond

func DatabaseList

func DatabaseList(db *gorm.DB, conds egorm.Conds) (resp []*Database, err error)

DatabaseList Get all currently undeleted clusters. Mainly used for front end

func (*Database) TableName

func (m *Database) TableName() string

type Event added in v0.2.0

type Event struct {
	ID            int    `gorm:"primary_key,not null;AUTO_INCREMENT" json:"id"`
	Source        string `gorm:"not null;default:'';size:64;index:idx_source;comment:事件来源" json:"source"`
	UserName      string `gorm:"not null;default:'';size:32;comment:操作用户的名字" json:"userName"`
	UID           int64  `gorm:"not null;default:0;comment:操作用户的uid" json:"uid"`
	Operation     string `gorm:"not null;default:'';size:64;index:idx_operation;comment:操作名" json:"operation"`
	ObjectType    string `gorm:"not null;default:'';size:64;comment:被操作对象的类型(一般为db.Table名)" json:"objectType"`
	ObjectId      int    `gorm:"not null;default:0;comment:被操作对象类型(db.Table)下的具体对象的主键(id)" json:"ObjectId"`
	Metadata      string `gorm:"not null;type:text;comment:事件内容" json:"metadata"`
	Ctime         int64  `gorm:"not null;default:0;type:bigint;autoCreateTime;comment:事件发生时间" json:"ctime"`
	OperationName string `gorm:"-" json:"operationName"`
	SourceName    string `gorm:"-" json:"sourceName"`
}

func (*Event) HandleOperationName added in v0.2.0

func (a *Event) HandleOperationName()

func (*Event) HandleSourceName added in v0.2.0

func (a *Event) HandleSourceName()

func (Event) TableName added in v0.2.0

func (Event) TableName() string

type Index

type Index struct {
	BaseModel

	Tid      int    `gorm:"column:tid;type:int(11);index:uix_tid_field_root,unique" json:"tid"`                          // table id
	Field    string `gorm:"column:field;type:varchar(128);NOT NULL;index:uix_tid_field_root,unique" json:"field"`        // index field name
	Typ      int    `gorm:"column:typ;type:int(11);NOT NULL" json:"typ"`                                                 // index field type, 0 text 1 long 2 double
	Alias    string `gorm:"column:alias;type:varchar(128);NOT NULL" json:"alias"`                                        // index filed alias name
	RootName string `gorm:"column:root_name;type:varchar(128);NOT NULL;index:uix_tid_field_root,unique" json:"rootName"` // root_name
}

Index 索引数据存储

func IndexInfo

func IndexInfo(db *gorm.DB, id int) (resp Index, err error)

func IndexList

func IndexList(conds egorm.Conds) (resp []*Index, err error)

func (*Index) GetFieldName added in v0.2.1

func (t *Index) GetFieldName() string

func (*Index) TableName

func (t *Index) TableName() string

type Instance

type Instance struct {
	BaseModel

	Datasource       string  `gorm:"column:datasource;type:varchar(32);NOT NULL;index:idx_datasource_name,unique" json:"datasource"` // datasource type
	Name             string  `gorm:"column:name;type:varchar(128);NOT NULL;index:idx_datasource_name,unique" json:"name"`            // datasource instance name
	Dsn              string  `gorm:"column:dsn;type:text" json:"dsn"`                                                                // dsn
	RuleStoreType    int     `gorm:"column:rule_store_type;type:int(11)" json:"ruleStoreType"`                                       // rule_store_type 0 集群 1 文件
	FilePath         string  `gorm:"column:file_path;type:varchar(255)" json:"filePath"`                                             // file_path
	ClusterId        int     `gorm:"column:cluster_id;type:int(11)" json:"clusterId"`                                                // cluster_id
	Namespace        string  `gorm:"column:namespace;type:varchar(128)" json:"namespace"`                                            // namespace
	Configmap        string  `gorm:"column:configmap;type:varchar(128)" json:"configmap"`                                            // configmap
	PrometheusTarget string  `gorm:"column:prometheus_target;type:varchar(128)" json:"prometheusTarget"`                             // prometheus ip or domain, eg: https://prometheus:9090
	Mode             int     `gorm:"column:mode;type:tinyint(1)" json:"mode"`                                                        // 0 standalone 1 cluster
	Clusters         Strings `gorm:"column:clusters;type:text" json:"clusters"`
}

Instance 服务配置存储

func InstanceByName

func InstanceByName(dt, name string) (resp Instance, err error)

func InstanceInfo

func InstanceInfo(db *gorm.DB, id int) (resp Instance, err error)

func InstanceInfoX

func InstanceInfoX(db *gorm.DB, conds map[string]interface{}) (resp Instance, err error)

InstanceInfoX Info extension method to query a single record according to Cond

func InstanceList

func InstanceList(conds egorm.Conds, extra ...string) (resp []*Instance, err error)

InstanceList ..

func (*Instance) DsKey

func (t *Instance) DsKey() string

func (*Instance) TableName

func (t *Instance) TableName() string

type Ints added in v0.2.0

type Ints []int

func (*Ints) Scan added in v0.2.0

func (t *Ints) Scan(input interface{}) error

func (Ints) Value added in v0.2.0

func (t Ints) Value() (driver.Value, error)

type K8SConfigMap

type K8SConfigMap struct {
	BaseModel

	ClusterId int    `gorm:"column:cluster_id;type:int(11);index:uix_cluster_id_name_namespace,unique" json:"clusterId"` // 集群ID
	Name      string `gorm:"column:name;type:varchar(128);index:uix_cluster_id_name_namespace,unique" json:"name"`
	Namespace string `gorm:"column:namespace;type:varchar(128);index:uix_cluster_id_name_namespace,unique" json:"namespace"`
}

func K8SConfigMapInfo

func K8SConfigMapInfo(paramId int) (resp K8SConfigMap, err error)

func K8SConfigMapInfoX

func K8SConfigMapInfoX(conds map[string]interface{}) (resp K8SConfigMap, err error)

K8SConfigMapInfoX get single item by condition

func K8SConfigMapList

func K8SConfigMapList(conds egorm.Conds) (resp []*K8SConfigMap, err error)

K8SConfigMapList return item list by condition

func K8SConfigMapListPage

func K8SConfigMapListPage(conds egorm.Conds, reqList *ReqPage) (total int64, respList []*K8SConfigMap)

K8SConfigMapListPage return item list by pagination

func K8SConfigMapListX

func K8SConfigMapListX(conds map[string]interface{}) (resp []K8SConfigMap, err error)

K8SConfigMapListX get single item by condition

func K8SConfigMapLoadOrSave

func K8SConfigMapLoadOrSave(db *gorm.DB, data *K8SConfigMap) (resp *K8SConfigMap, err error)

func (*K8SConfigMap) TableName

func (m *K8SConfigMap) TableName() string

type OAuthToken

type OAuthToken struct {
	*oauth2.Token
}

func (*OAuthToken) Scan

func (t *OAuthToken) Scan(input interface{}) error

func (OAuthToken) Value

func (t OAuthToken) Value() (driver.Value, error)

type ReqPage

type ReqPage struct {
	Current  int `json:"current" form:"current"`
	PageSize int `json:"pageSize" form:"pageSize"`
}

func (*ReqPage) Valid

func (r *ReqPage) Valid() error

type RespAllEnums added in v0.2.2

type RespAllEnums struct {
	SourceEnums    map[string]string `json:"sourceEnums"`
	OperationEnums map[string]string `json:"operationEnums"`
	UserEnums      map[int]string    `json:"userEnums"`
}

type RespEnumsOfSource added in v0.2.2

type RespEnumsOfSource struct {
	TargetSource   string            `json:"targetSource"`
	OperationEnums map[string]string `json:"operationEnums"`
}

type String2String added in v0.2.0

type String2String map[string]string

func (*String2String) Scan added in v0.2.0

func (t *String2String) Scan(input interface{}) error

func (String2String) Value added in v0.2.0

func (t String2String) Value() (driver.Value, error)

type Strings added in v0.2.2

type Strings []string

func (*Strings) Scan added in v0.2.2

func (t *Strings) Scan(input interface{}) error

func (Strings) Value added in v0.2.2

func (t Strings) Value() (driver.Value, error)

type Table

type Table struct {
	BaseModel

	Did            int    `gorm:"column:did;type:bigint(20);index:uix_did_name,unique" json:"did"`             // database id
	Name           string `gorm:"column:name;type:varchar(64);NOT NULL;index:uix_did_name,unique" json:"name"` // table
	Typ            int    `gorm:"column:typ;type:int(11)" json:"typ"`                                          // table type, 1 string 2 float
	Days           int    `gorm:"column:days;type:int(11)" json:"days"`                                        // data expire days
	Brokers        string `gorm:"column:brokers;type:varchar(255);NOT NULL" json:"brokers"`                    // kafka broker
	Topic          string `gorm:"column:topic;type:varchar(128);NOT NULL" json:"topic"`                        // kafka topic
	SqlData        string `gorm:"column:sql_data;type:text" json:"sqlData"`                                    // sql_data
	SqlStream      string `gorm:"column:sql_stream;type:text" json:"sqlStream"`                                // sql_stream
	SqlView        string `gorm:"column:sql_view;type:text" json:"sqlView"`                                    // sql_view
	SqlDistributed string `gorm:"column:sql_distributed;type:text" json:"sqlDistributed"`                      // sql_distributed
	Uid            int    `gorm:"column:uid;type:int(11)" json:"uid"`                                          // 操作人
	CreateType     int    `gorm:"column:create_type;type:tinyint(1)" json:"createType"`                        // operation type, 0 means create mogo fresh table, 1 means use exists table
	TimeField      string `gorm:"column:time_field;type:varchar(128);NOT NULL" json:"timeField"`               // custom time filed name of _time_
	TimeFieldType  int    `gorm:"column:time_field_type;type:int(11);default:0;NOT NULL" json:"timeFieldType"` // custom time filed type name of _time_
	Desc           string `gorm:"column:desc;type:varchar(255)" json:"desc"`

	Database *Database `json:"database,omitempty" gorm:"foreignKey:Did;references:ID"`
}

func TableInfo

func TableInfo(db *gorm.DB, paramId int) (resp Table, err error)

func TableInfoX

func TableInfoX(db *gorm.DB, conds map[string]interface{}) (resp Table, err error)

TableInfoX Info extension method to query a single record according to Cond

func TableList

func TableList(db *gorm.DB, conds egorm.Conds) (resp []*Table, err error)

TableList Get all currently undeleted clusters. Mainly used for front end

func (*Table) GetTimeField added in v0.2.1

func (m *Table) GetTimeField() string

func (*Table) TableName

func (m *Table) TableName() string

type UnitItem added in v0.2.1

type UnitItem struct {
	Alias    string        `json:"alias"`
	Duration time.Duration `json:"duration"`
}

type User

type User struct {
	BaseModel

	OaId             int64      `gorm:"column:oa_id;type:bigint(20);NOT NULL" json:"oaId"`                           // oa_id
	Username         string     `gorm:"column:username;type:varchar(256);NOT NULL" json:"username"`                  // 用户名
	Nickname         string     `gorm:"column:nickname;type:varchar(256);NOT NULL" json:"nickname"`                  // 昵称
	Secret           string     `gorm:"column:secret;type:varchar(256);NOT NULL" json:"secret"`                      // 实例名称
	Email            string     `gorm:"column:email;type:varchar(64);NOT NULL" json:"email"`                         // email
	Avatar           string     `gorm:"column:avatar;type:varchar(256);NOT NULL" json:"avatar"`                      // avatar
	Hash             string     `gorm:"column:hash;type:varchar(256);NOT NULL" json:"hash"`                          // hash
	WebUrl           string     `gorm:"column:web_url;type:varchar(256);NOT NULL" json:"webUrl"`                     // webUrl
	Oauth            string     `gorm:"column:oauth;type:varchar(256);NOT NULL" json:"oauth"`                        // oauth
	State            string     `gorm:"column:state;type:varchar(256);NOT NULL" json:"state"`                        // state
	OauthId          string     `gorm:"column:oauth_id;type:varchar(256);NOT NULL" json:"oauthId"`                   // oauthId
	Password         string     `gorm:"column:password;type:varchar(256);NOT NULL" json:"password"`                  // password
	CurrentAuthority string     `gorm:"column:current_authority;type:varchar(256);NOT NULL" json:"currentAuthority"` // currentAuthority
	Access           string     `gorm:"column:access;type:varchar(256);NOT NULL" json:"access"`                      // access
	OauthToken       OAuthToken `gorm:"column:oauth_token;type:text" json:"-"`                                       // oauth_token
}

func UserInfo

func UserInfo(paramId int) (resp User, err error)

func UserInfoX

func UserInfoX(conds map[string]interface{}) (resp User, err error)

UserInfoX get single item by condition

func UserList

func UserList(conds egorm.Conds) (resp []*User, err error)

UserList return item list by condition

func UserListPage

func UserListPage(conds egorm.Conds, reqList *ReqPage) (total int64, respList []*User)

UserListPage return item list by pagination

func (User) TableName

func (User) TableName() string

type UserIdName added in v0.2.2

type UserIdName struct {
	ID       int
	Username string
}

type View

type View struct {
	BaseModel

	Tid              int    `gorm:"column:tid;type:bigint(11);index:uix_tid_name,unique" json:"tid"`             // table id
	Name             string `gorm:"column:name;type:varchar(64);NOT NULL;index:uix_tid_name,unique" json:"name"` // view name
	IsUseDefaultTime int    `gorm:"column:is_use_default_time;type:int(11)" json:"isUseDefaultTime"`             // use system time or not
	Key              string `gorm:"column:key;type:varchar(64);NOT NULL" json:"key"`                             // field name of time in raw log
	Format           string `gorm:"column:format;type:varchar(64);NOT NULL" json:"format"`                       // timestamp parse to extract time from raw log and parse it to datetime
	SqlView          string `gorm:"column:sql_view;type:text" json:"sqlView"`                                    // sql_view
	Uid              int    `gorm:"column:uid;type:int(11)" json:"uid"`                                          // operator uid
}

View Materialized view management

func ViewInfo

func ViewInfo(db *gorm.DB, paramId int) (resp View, err error)

func ViewInfoX

func ViewInfoX(conds map[string]interface{}) (resp View, err error)

ViewInfoX Info extension method to query a single record according to Cond

func ViewList

func ViewList(db *gorm.DB, conds egorm.Conds) (resp []*View, err error)

ViewList Get all currently undeleted clusters. Mainly used for front end

func (*View) TableName

func (m *View) TableName() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL