sqlc

package
v1.2.1 Latest Latest
Warning

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

Go to latest
Published: Jan 21, 2026 License: AGPL-3.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddTeamMemberParams

type AddTeamMemberParams struct {
	TeamID int64  `json:"team_id"`
	UserID int64  `json:"user_id"`
	Role   string `json:"role"`
}

type AddTeamSourceParams

type AddTeamSourceParams struct {
	TeamID   int64 `json:"team_id"`
	SourceID int64 `json:"source_id"`
}

type Alert added in v0.6.0

type Alert struct {
	ID                   int64          `json:"id"`
	TeamID               int64          `json:"team_id"`
	SourceID             int64          `json:"source_id"`
	Name                 string         `json:"name"`
	Description          sql.NullString `json:"description"`
	QueryType            string         `json:"query_type"`
	Query                sql.NullString `json:"query"`
	ConditionJson        sql.NullString `json:"condition_json"`
	LookbackSeconds      int64          `json:"lookback_seconds"`
	ThresholdOperator    string         `json:"threshold_operator"`
	ThresholdValue       float64        `json:"threshold_value"`
	FrequencySeconds     int64          `json:"frequency_seconds"`
	Severity             string         `json:"severity"`
	LabelsJson           sql.NullString `json:"labels_json"`
	AnnotationsJson      sql.NullString `json:"annotations_json"`
	GeneratorUrl         sql.NullString `json:"generator_url"`
	IsActive             int64          `json:"is_active"`
	LastState            string         `json:"last_state"`
	LastEvaluatedAt      sql.NullTime   `json:"last_evaluated_at"`
	LastTriggeredAt      sql.NullTime   `json:"last_triggered_at"`
	CreatedAt            time.Time      `json:"created_at"`
	UpdatedAt            time.Time      `json:"updated_at"`
	RecipientUserIdsJson sql.NullString `json:"recipient_user_ids_json"`
	WebhookUrlsJson      sql.NullString `json:"webhook_urls_json"`
}

type AlertHistory added in v0.6.0

type AlertHistory struct {
	ID          int64           `json:"id"`
	AlertID     int64           `json:"alert_id"`
	Status      string          `json:"status"`
	TriggeredAt time.Time       `json:"triggered_at"`
	ResolvedAt  sql.NullTime    `json:"resolved_at"`
	Value       sql.NullFloat64 `json:"value"`
	Message     sql.NullString  `json:"message"`
	PayloadJson sql.NullString  `json:"payload_json"`
	CreatedAt   time.Time       `json:"created_at"`
}

type ApiToken added in v0.2.2

type ApiToken struct {
	ID         int64        `json:"id"`
	UserID     int64        `json:"user_id"`
	Name       string       `json:"name"`
	TokenHash  string       `json:"token_hash"`
	Prefix     string       `json:"prefix"`
	LastUsedAt sql.NullTime `json:"last_used_at"`
	ExpiresAt  sql.NullTime `json:"expires_at"`
	CreatedAt  time.Time    `json:"created_at"`
	UpdatedAt  time.Time    `json:"updated_at"`
}

type CountAdminUsersParams

type CountAdminUsersParams struct {
	Role   string `json:"role"`
	Status string `json:"status"`
}

type CountUserSessionsParams

type CountUserSessionsParams struct {
	UserID    int64     `json:"user_id"`
	ExpiresAt time.Time `json:"expires_at"`
}

type CreateAPITokenParams added in v0.2.2

type CreateAPITokenParams struct {
	UserID    int64        `json:"user_id"`
	Name      string       `json:"name"`
	TokenHash string       `json:"token_hash"`
	Prefix    string       `json:"prefix"`
	ExpiresAt sql.NullTime `json:"expires_at"`
}

type CreateAlertParams added in v0.6.0

type CreateAlertParams struct {
	TeamID               int64          `json:"team_id"`
	SourceID             int64          `json:"source_id"`
	Name                 string         `json:"name"`
	Description          sql.NullString `json:"description"`
	QueryType            string         `json:"query_type"`
	Query                sql.NullString `json:"query"`
	ConditionJson        sql.NullString `json:"condition_json"`
	LookbackSeconds      int64          `json:"lookback_seconds"`
	ThresholdOperator    string         `json:"threshold_operator"`
	ThresholdValue       float64        `json:"threshold_value"`
	FrequencySeconds     int64          `json:"frequency_seconds"`
	Severity             string         `json:"severity"`
	LabelsJson           sql.NullString `json:"labels_json"`
	AnnotationsJson      sql.NullString `json:"annotations_json"`
	RecipientUserIdsJson sql.NullString `json:"recipient_user_ids_json"`
	WebhookUrlsJson      sql.NullString `json:"webhook_urls_json"`
	GeneratorUrl         sql.NullString `json:"generator_url"`
	IsActive             int64          `json:"is_active"`
}

type CreateSessionParams

type CreateSessionParams struct {
	ID        string    `json:"id"`
	UserID    int64     `json:"user_id"`
	ExpiresAt time.Time `json:"expires_at"`
	CreatedAt time.Time `json:"created_at"`
}

type CreateSourceParams

type CreateSourceParams struct {
	Name              string         `json:"name"`
	MetaIsAutoCreated int64          `json:"_meta_is_auto_created"`
	MetaTsField       string         `json:"_meta_ts_field"`
	MetaSeverityField sql.NullString `json:"_meta_severity_field"`
	Host              string         `json:"host"`
	Username          string         `json:"username"`
	Password          string         `json:"password"`
	Database          string         `json:"database"`
	TableName         string         `json:"table_name"`
	Description       sql.NullString `json:"description"`
	TtlDays           int64          `json:"ttl_days"`
}

type CreateTeamParams

type CreateTeamParams struct {
	Name        string         `json:"name"`
	Description sql.NullString `json:"description"`
}

type CreateTeamSourceQueryParams

type CreateTeamSourceQueryParams struct {
	TeamID       int64          `json:"team_id"`
	SourceID     int64          `json:"source_id"`
	Name         string         `json:"name"`
	Description  sql.NullString `json:"description"`
	QueryType    string         `json:"query_type"`
	QueryContent string         `json:"query_content"`
}

type CreateUserParams

type CreateUserParams struct {
	Email       string       `json:"email"`
	FullName    string       `json:"full_name"`
	Role        string       `json:"role"`
	Status      string       `json:"status"`
	LastLoginAt sql.NullTime `json:"last_login_at"`
}

type DBTX

type DBTX interface {
	ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
	PrepareContext(context.Context, string) (*sql.Stmt, error)
	QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
	QueryRowContext(context.Context, string, ...interface{}) *sql.Row
}

type DeleteAPITokenParams added in v0.2.2

type DeleteAPITokenParams struct {
	ID     int64 `json:"id"`
	UserID int64 `json:"user_id"`
}

type DeleteTeamSourceQueryParams

type DeleteTeamSourceQueryParams struct {
	ID       int64 `json:"id"`
	TeamID   int64 `json:"team_id"`
	SourceID int64 `json:"source_id"`
}

type GetAlertForTeamSourceParams added in v0.6.0

type GetAlertForTeamSourceParams struct {
	ID       int64 `json:"id"`
	TeamID   int64 `json:"team_id"`
	SourceID int64 `json:"source_id"`
}

type GetQueryBookmarkStatusParams added in v1.1.0

type GetQueryBookmarkStatusParams struct {
	ID       int64 `json:"id"`
	TeamID   int64 `json:"team_id"`
	SourceID int64 `json:"source_id"`
}

type GetSourceByNameParams

type GetSourceByNameParams struct {
	Database  string `json:"database"`
	TableName string `json:"table_name"`
}

type GetTeamMemberParams

type GetTeamMemberParams struct {
	TeamID int64 `json:"team_id"`
	UserID int64 `json:"user_id"`
}

type GetTeamSourceQueryParams

type GetTeamSourceQueryParams struct {
	ID       int64 `json:"id"`
	TeamID   int64 `json:"team_id"`
	SourceID int64 `json:"source_id"`
}

type InsertAlertHistoryParams added in v0.6.0

type InsertAlertHistoryParams struct {
	AlertID     int64           `json:"alert_id"`
	Status      string          `json:"status"`
	Value       sql.NullFloat64 `json:"value"`
	Message     sql.NullString  `json:"message"`
	PayloadJson sql.NullString  `json:"payload_json"`
}

type ListAlertHistoryParams added in v0.6.0

type ListAlertHistoryParams struct {
	AlertID int64 `json:"alert_id"`
	Limit   int64 `json:"limit"`
}

type ListAlertsByTeamAndSourceParams added in v0.6.0

type ListAlertsByTeamAndSourceParams struct {
	TeamID   int64 `json:"team_id"`
	SourceID int64 `json:"source_id"`
}

type ListQueriesByTeamAndSourceParams

type ListQueriesByTeamAndSourceParams struct {
	TeamID   int64 `json:"team_id"`
	SourceID int64 `json:"source_id"`
}

type ListTeamMembersWithDetailsRow

type ListTeamMembersWithDetailsRow struct {
	TeamID    int64     `json:"team_id"`
	UserID    int64     `json:"user_id"`
	Role      string    `json:"role"`
	CreatedAt time.Time `json:"created_at"`
	Email     string    `json:"email"`
	FullName  string    `json:"full_name"`
}

type ListTeamsForUserRow added in v0.2.2

type ListTeamsForUserRow struct {
	ID          int64          `json:"id"`
	Name        string         `json:"name"`
	Description sql.NullString `json:"description"`
	CreatedAt   time.Time      `json:"created_at"`
	UpdatedAt   time.Time      `json:"updated_at"`
	Role        string         `json:"role"`
	MemberCount int64          `json:"member_count"`
}

type ListTeamsRow

type ListTeamsRow struct {
	ID          int64          `json:"id"`
	Name        string         `json:"name"`
	Description sql.NullString `json:"description"`
	CreatedAt   time.Time      `json:"created_at"`
	UpdatedAt   time.Time      `json:"updated_at"`
	MemberCount int64          `json:"member_count"`
}

type Querier

type Querier interface {
	// Team Members
	// Add a member to a team
	AddTeamMember(ctx context.Context, arg AddTeamMemberParams) error
	// Team Sources
	// Add a data source to a team
	AddTeamSource(ctx context.Context, arg AddTeamSourceParams) error
	// Count active admin users
	CountAdminUsers(ctx context.Context, arg CountAdminUsersParams) (int64, error)
	// Count active sessions for a user
	CountUserSessions(ctx context.Context, arg CountUserSessionsParams) (int64, error)
	// API Tokens
	// Create a new API token
	CreateAPIToken(ctx context.Context, arg CreateAPITokenParams) (int64, error)
	// Alerts
	CreateAlert(ctx context.Context, arg CreateAlertParams) (int64, error)
	// Sessions
	// Create a new session
	CreateSession(ctx context.Context, arg CreateSessionParams) error
	// Sources
	// Create a new source entry
	CreateSource(ctx context.Context, arg CreateSourceParams) (int64, error)
	// Teams
	// Create a new team
	CreateTeam(ctx context.Context, arg CreateTeamParams) (int64, error)
	// Team Queries
	// Create a new query for a team and source
	CreateTeamSourceQuery(ctx context.Context, arg CreateTeamSourceQueryParams) (int64, error)
	// Users
	// Create a new user
	CreateUser(ctx context.Context, arg CreateUserParams) (int64, error)
	// Delete an API token by ID and user ID (ensure user owns the token)
	DeleteAPIToken(ctx context.Context, arg DeleteAPITokenParams) error
	DeleteAlert(ctx context.Context, id int64) error
	// Delete all expired API tokens
	DeleteExpiredAPITokens(ctx context.Context) error
	// Delete a session by ID
	DeleteSession(ctx context.Context, id string) error
	// Delete a source by ID
	DeleteSource(ctx context.Context, id int64) error
	DeleteSystemSetting(ctx context.Context, key string) error
	// Delete a team by ID
	DeleteTeam(ctx context.Context, id int64) error
	// Delete a query by ID for a specific team and source
	DeleteTeamSourceQuery(ctx context.Context, arg DeleteTeamSourceQueryParams) error
	// Delete a user by ID
	DeleteUser(ctx context.Context, id int64) error
	// Delete all sessions for a user
	DeleteUserSessions(ctx context.Context, userID int64) error
	// Get an API token by ID
	GetAPIToken(ctx context.Context, id int64) (ApiToken, error)
	// Get an API token by its hash (for authentication)
	GetAPITokenByHash(ctx context.Context, tokenHash string) (ApiToken, error)
	GetAlert(ctx context.Context, id int64) (Alert, error)
	GetAlertForTeamSource(ctx context.Context, arg GetAlertForTeamSourceParams) (Alert, error)
	GetLatestUnresolvedAlertHistory(ctx context.Context, alertID int64) (AlertHistory, error)
	// Get the current bookmark status of a query
	GetQueryBookmarkStatus(ctx context.Context, arg GetQueryBookmarkStatusParams) (bool, error)
	// Get a session by ID
	GetSession(ctx context.Context, id string) (Session, error)
	// Get a single source by ID
	GetSource(ctx context.Context, id int64) (Source, error)
	// Get a single source by table name and database
	GetSourceByName(ctx context.Context, arg GetSourceByNameParams) (Source, error)
	// System Settings Queries
	GetSystemSetting(ctx context.Context, key string) (SystemSetting, error)
	// Get a team by ID
	GetTeam(ctx context.Context, id int64) (Team, error)
	// Get a team by its name
	GetTeamByName(ctx context.Context, name string) (Team, error)
	// Get a team member
	GetTeamMember(ctx context.Context, arg GetTeamMemberParams) (TeamMember, error)
	// Get a query by ID for a specific team and source
	GetTeamSourceQuery(ctx context.Context, arg GetTeamSourceQueryParams) (TeamQuery, error)
	// Get a user by ID
	GetUser(ctx context.Context, id int64) (User, error)
	// Get a user by email
	GetUserByEmail(ctx context.Context, email string) (User, error)
	// Alert history queries
	InsertAlertHistory(ctx context.Context, arg InsertAlertHistoryParams) (int64, error)
	// List all API tokens for a user
	ListAPITokensForUser(ctx context.Context, userID int64) ([]ApiToken, error)
	ListActiveAlertsDue(ctx context.Context) ([]Alert, error)
	ListAlertHistory(ctx context.Context, arg ListAlertHistoryParams) ([]AlertHistory, error)
	ListAlertsByTeamAndSource(ctx context.Context, arg ListAlertsByTeamAndSourceParams) ([]Alert, error)
	// List all queries for a specific team across all sources (bookmarked first, then by updated_at)
	ListQueriesByTeam(ctx context.Context, teamID int64) ([]TeamQuery, error)
	// List all queries for a specific team and source (bookmarked first, then by updated_at)
	ListQueriesByTeamAndSource(ctx context.Context, arg ListQueriesByTeamAndSourceParams) ([]TeamQuery, error)
	// List all teams a data source is a member of
	ListSourceTeams(ctx context.Context, sourceID int64) ([]Team, error)
	// Get all sources ordered by creation date
	ListSources(ctx context.Context) ([]Source, error)
	// List all sources a user has access to
	ListSourcesForUser(ctx context.Context, userID int64) ([]Source, error)
	ListSystemSettings(ctx context.Context) ([]SystemSetting, error)
	ListSystemSettingsByCategory(ctx context.Context, category string) ([]SystemSetting, error)
	// List all members of a team
	ListTeamMembers(ctx context.Context, teamID int64) ([]TeamMember, error)
	// List all members of a team with user details
	ListTeamMembersWithDetails(ctx context.Context, teamID int64) ([]ListTeamMembersWithDetailsRow, error)
	// List all data sources in a team
	ListTeamSources(ctx context.Context, teamID int64) ([]Source, error)
	// List all teams
	ListTeams(ctx context.Context) ([]ListTeamsRow, error)
	// List all teams a user is a member of
	ListTeamsForUser(ctx context.Context, userID int64) ([]ListTeamsForUserRow, error)
	// List all teams a user is a member of
	ListUserTeams(ctx context.Context, userID int64) ([]Team, error)
	// List all users
	ListUsers(ctx context.Context) ([]User, error)
	MarkAlertEvaluated(ctx context.Context, id int64) error
	MarkAlertTriggered(ctx context.Context, id int64) error
	// Remove a member from a team
	RemoveTeamMember(ctx context.Context, arg RemoveTeamMemberParams) error
	// Remove a data source from a team
	RemoveTeamSource(ctx context.Context, arg RemoveTeamSourceParams) error
	ResolveAlertHistory(ctx context.Context, arg ResolveAlertHistoryParams) error
	// Additional queries for user-source and team-source access
	// Check if a team has access to a source
	TeamHasSource(ctx context.Context, arg TeamHasSourceParams) (int64, error)
	// Toggle the bookmark status of a query
	ToggleQueryBookmark(ctx context.Context, arg ToggleQueryBookmarkParams) error
	// Update the last used timestamp for an API token
	UpdateAPITokenLastUsed(ctx context.Context, id int64) error
	UpdateAlert(ctx context.Context, arg UpdateAlertParams) error
	UpdateAlertHistoryPayload(ctx context.Context, arg UpdateAlertHistoryPayloadParams) error
	// Update an existing source
	UpdateSource(ctx context.Context, arg UpdateSourceParams) error
	// Update a team
	UpdateTeam(ctx context.Context, arg UpdateTeamParams) error
	// Update a team member's role
	UpdateTeamMemberRole(ctx context.Context, arg UpdateTeamMemberRoleParams) error
	// Update a query for a team and source
	UpdateTeamSourceQuery(ctx context.Context, arg UpdateTeamSourceQueryParams) error
	// Update a user
	UpdateUser(ctx context.Context, arg UpdateUserParams) error
	UpsertSystemSetting(ctx context.Context, arg UpsertSystemSettingParams) error
	// Check if a user has access to a source through any team
	UserHasSourceAccess(ctx context.Context, arg UserHasSourceAccessParams) (int64, error)
}

type Queries

type Queries struct {
	// contains filtered or unexported fields
}

func New

func New(db DBTX) *Queries

func Prepare

func Prepare(ctx context.Context, db DBTX) (*Queries, error)

func (*Queries) AddTeamMember

func (q *Queries) AddTeamMember(ctx context.Context, arg AddTeamMemberParams) error

Team Members Add a member to a team

func (*Queries) AddTeamSource

func (q *Queries) AddTeamSource(ctx context.Context, arg AddTeamSourceParams) error

Team Sources Add a data source to a team

func (*Queries) Close

func (q *Queries) Close() error

func (*Queries) CountAdminUsers

func (q *Queries) CountAdminUsers(ctx context.Context, arg CountAdminUsersParams) (int64, error)

Count active admin users

func (*Queries) CountUserSessions

func (q *Queries) CountUserSessions(ctx context.Context, arg CountUserSessionsParams) (int64, error)

Count active sessions for a user

func (*Queries) CreateAPIToken added in v0.2.2

func (q *Queries) CreateAPIToken(ctx context.Context, arg CreateAPITokenParams) (int64, error)

API Tokens Create a new API token

func (*Queries) CreateAlert added in v0.6.0

func (q *Queries) CreateAlert(ctx context.Context, arg CreateAlertParams) (int64, error)

Alerts

func (*Queries) CreateSession

func (q *Queries) CreateSession(ctx context.Context, arg CreateSessionParams) error

Sessions Create a new session

func (*Queries) CreateSource

func (q *Queries) CreateSource(ctx context.Context, arg CreateSourceParams) (int64, error)

Sources Create a new source entry

func (*Queries) CreateTeam

func (q *Queries) CreateTeam(ctx context.Context, arg CreateTeamParams) (int64, error)

Teams Create a new team

func (*Queries) CreateTeamSourceQuery

func (q *Queries) CreateTeamSourceQuery(ctx context.Context, arg CreateTeamSourceQueryParams) (int64, error)

Team Queries Create a new query for a team and source

func (*Queries) CreateUser

func (q *Queries) CreateUser(ctx context.Context, arg CreateUserParams) (int64, error)

Users Create a new user

func (*Queries) DeleteAPIToken added in v0.2.2

func (q *Queries) DeleteAPIToken(ctx context.Context, arg DeleteAPITokenParams) error

Delete an API token by ID and user ID (ensure user owns the token)

func (*Queries) DeleteAlert added in v0.6.0

func (q *Queries) DeleteAlert(ctx context.Context, id int64) error

func (*Queries) DeleteExpiredAPITokens added in v0.2.2

func (q *Queries) DeleteExpiredAPITokens(ctx context.Context) error

Delete all expired API tokens

func (*Queries) DeleteSession

func (q *Queries) DeleteSession(ctx context.Context, id string) error

Delete a session by ID

func (*Queries) DeleteSource

func (q *Queries) DeleteSource(ctx context.Context, id int64) error

Delete a source by ID

func (*Queries) DeleteSystemSetting added in v0.6.0

func (q *Queries) DeleteSystemSetting(ctx context.Context, key string) error

func (*Queries) DeleteTeam

func (q *Queries) DeleteTeam(ctx context.Context, id int64) error

Delete a team by ID

func (*Queries) DeleteTeamSourceQuery

func (q *Queries) DeleteTeamSourceQuery(ctx context.Context, arg DeleteTeamSourceQueryParams) error

Delete a query by ID for a specific team and source

func (*Queries) DeleteUser

func (q *Queries) DeleteUser(ctx context.Context, id int64) error

Delete a user by ID

func (*Queries) DeleteUserSessions

func (q *Queries) DeleteUserSessions(ctx context.Context, userID int64) error

Delete all sessions for a user

func (*Queries) GetAPIToken added in v0.2.2

func (q *Queries) GetAPIToken(ctx context.Context, id int64) (ApiToken, error)

Get an API token by ID

func (*Queries) GetAPITokenByHash added in v0.2.2

func (q *Queries) GetAPITokenByHash(ctx context.Context, tokenHash string) (ApiToken, error)

Get an API token by its hash (for authentication)

func (*Queries) GetAlert added in v0.6.0

func (q *Queries) GetAlert(ctx context.Context, id int64) (Alert, error)

func (*Queries) GetAlertForTeamSource added in v0.6.0

func (q *Queries) GetAlertForTeamSource(ctx context.Context, arg GetAlertForTeamSourceParams) (Alert, error)

func (*Queries) GetLatestUnresolvedAlertHistory added in v0.6.0

func (q *Queries) GetLatestUnresolvedAlertHistory(ctx context.Context, alertID int64) (AlertHistory, error)

func (*Queries) GetQueryBookmarkStatus added in v1.1.0

func (q *Queries) GetQueryBookmarkStatus(ctx context.Context, arg GetQueryBookmarkStatusParams) (bool, error)

Get the current bookmark status of a query

func (*Queries) GetSession

func (q *Queries) GetSession(ctx context.Context, id string) (Session, error)

Get a session by ID

func (*Queries) GetSource

func (q *Queries) GetSource(ctx context.Context, id int64) (Source, error)

Get a single source by ID

func (*Queries) GetSourceByName

func (q *Queries) GetSourceByName(ctx context.Context, arg GetSourceByNameParams) (Source, error)

Get a single source by table name and database

func (*Queries) GetSystemSetting added in v0.6.0

func (q *Queries) GetSystemSetting(ctx context.Context, key string) (SystemSetting, error)

System Settings Queries

func (*Queries) GetTeam

func (q *Queries) GetTeam(ctx context.Context, id int64) (Team, error)

Get a team by ID

func (*Queries) GetTeamByName

func (q *Queries) GetTeamByName(ctx context.Context, name string) (Team, error)

Get a team by its name

func (*Queries) GetTeamMember

func (q *Queries) GetTeamMember(ctx context.Context, arg GetTeamMemberParams) (TeamMember, error)

Get a team member

func (*Queries) GetTeamSourceQuery

func (q *Queries) GetTeamSourceQuery(ctx context.Context, arg GetTeamSourceQueryParams) (TeamQuery, error)

Get a query by ID for a specific team and source

func (*Queries) GetUser

func (q *Queries) GetUser(ctx context.Context, id int64) (User, error)

Get a user by ID

func (*Queries) GetUserByEmail

func (q *Queries) GetUserByEmail(ctx context.Context, email string) (User, error)

Get a user by email

func (*Queries) InsertAlertHistory added in v0.6.0

func (q *Queries) InsertAlertHistory(ctx context.Context, arg InsertAlertHistoryParams) (int64, error)

Alert history queries

func (*Queries) ListAPITokensForUser added in v0.2.2

func (q *Queries) ListAPITokensForUser(ctx context.Context, userID int64) ([]ApiToken, error)

List all API tokens for a user

func (*Queries) ListActiveAlertsDue added in v0.6.0

func (q *Queries) ListActiveAlertsDue(ctx context.Context) ([]Alert, error)

func (*Queries) ListAlertHistory added in v0.6.0

func (q *Queries) ListAlertHistory(ctx context.Context, arg ListAlertHistoryParams) ([]AlertHistory, error)

func (*Queries) ListAlertsByTeamAndSource added in v0.6.0

func (q *Queries) ListAlertsByTeamAndSource(ctx context.Context, arg ListAlertsByTeamAndSourceParams) ([]Alert, error)

func (*Queries) ListQueriesByTeam added in v1.2.0

func (q *Queries) ListQueriesByTeam(ctx context.Context, teamID int64) ([]TeamQuery, error)

List all queries for a specific team across all sources (bookmarked first, then by updated_at)

func (*Queries) ListQueriesByTeamAndSource

func (q *Queries) ListQueriesByTeamAndSource(ctx context.Context, arg ListQueriesByTeamAndSourceParams) ([]TeamQuery, error)

List all queries for a specific team and source (bookmarked first, then by updated_at)

func (*Queries) ListSourceTeams

func (q *Queries) ListSourceTeams(ctx context.Context, sourceID int64) ([]Team, error)

List all teams a data source is a member of

func (*Queries) ListSources

func (q *Queries) ListSources(ctx context.Context) ([]Source, error)

Get all sources ordered by creation date

func (*Queries) ListSourcesForUser

func (q *Queries) ListSourcesForUser(ctx context.Context, userID int64) ([]Source, error)

List all sources a user has access to

func (*Queries) ListSystemSettings added in v0.6.0

func (q *Queries) ListSystemSettings(ctx context.Context) ([]SystemSetting, error)

func (*Queries) ListSystemSettingsByCategory added in v0.6.0

func (q *Queries) ListSystemSettingsByCategory(ctx context.Context, category string) ([]SystemSetting, error)

func (*Queries) ListTeamMembers

func (q *Queries) ListTeamMembers(ctx context.Context, teamID int64) ([]TeamMember, error)

List all members of a team

func (*Queries) ListTeamMembersWithDetails

func (q *Queries) ListTeamMembersWithDetails(ctx context.Context, teamID int64) ([]ListTeamMembersWithDetailsRow, error)

List all members of a team with user details

func (*Queries) ListTeamSources

func (q *Queries) ListTeamSources(ctx context.Context, teamID int64) ([]Source, error)

List all data sources in a team

func (*Queries) ListTeams

func (q *Queries) ListTeams(ctx context.Context) ([]ListTeamsRow, error)

List all teams

func (*Queries) ListTeamsForUser

func (q *Queries) ListTeamsForUser(ctx context.Context, userID int64) ([]ListTeamsForUserRow, error)

List all teams a user is a member of

func (*Queries) ListUserTeams

func (q *Queries) ListUserTeams(ctx context.Context, userID int64) ([]Team, error)

List all teams a user is a member of

func (*Queries) ListUsers

func (q *Queries) ListUsers(ctx context.Context) ([]User, error)

List all users

func (*Queries) MarkAlertEvaluated added in v0.6.0

func (q *Queries) MarkAlertEvaluated(ctx context.Context, id int64) error

func (*Queries) MarkAlertTriggered added in v0.6.0

func (q *Queries) MarkAlertTriggered(ctx context.Context, id int64) error

func (*Queries) RemoveTeamMember

func (q *Queries) RemoveTeamMember(ctx context.Context, arg RemoveTeamMemberParams) error

Remove a member from a team

func (*Queries) RemoveTeamSource

func (q *Queries) RemoveTeamSource(ctx context.Context, arg RemoveTeamSourceParams) error

Remove a data source from a team

func (*Queries) ResolveAlertHistory added in v0.6.0

func (q *Queries) ResolveAlertHistory(ctx context.Context, arg ResolveAlertHistoryParams) error

func (*Queries) TeamHasSource

func (q *Queries) TeamHasSource(ctx context.Context, arg TeamHasSourceParams) (int64, error)

Additional queries for user-source and team-source access Check if a team has access to a source

func (*Queries) ToggleQueryBookmark added in v1.1.0

func (q *Queries) ToggleQueryBookmark(ctx context.Context, arg ToggleQueryBookmarkParams) error

Toggle the bookmark status of a query

func (*Queries) UpdateAPITokenLastUsed added in v0.2.2

func (q *Queries) UpdateAPITokenLastUsed(ctx context.Context, id int64) error

Update the last used timestamp for an API token

func (*Queries) UpdateAlert added in v0.6.0

func (q *Queries) UpdateAlert(ctx context.Context, arg UpdateAlertParams) error

func (*Queries) UpdateAlertHistoryPayload added in v0.6.0

func (q *Queries) UpdateAlertHistoryPayload(ctx context.Context, arg UpdateAlertHistoryPayloadParams) error

func (*Queries) UpdateSource

func (q *Queries) UpdateSource(ctx context.Context, arg UpdateSourceParams) error

Update an existing source

func (*Queries) UpdateTeam

func (q *Queries) UpdateTeam(ctx context.Context, arg UpdateTeamParams) error

Update a team

func (*Queries) UpdateTeamMemberRole

func (q *Queries) UpdateTeamMemberRole(ctx context.Context, arg UpdateTeamMemberRoleParams) error

Update a team member's role

func (*Queries) UpdateTeamSourceQuery

func (q *Queries) UpdateTeamSourceQuery(ctx context.Context, arg UpdateTeamSourceQueryParams) error

Update a query for a team and source

func (*Queries) UpdateUser

func (q *Queries) UpdateUser(ctx context.Context, arg UpdateUserParams) error

Update a user

func (*Queries) UpsertSystemSetting added in v0.6.0

func (q *Queries) UpsertSystemSetting(ctx context.Context, arg UpsertSystemSettingParams) error

func (*Queries) UserHasSourceAccess

func (q *Queries) UserHasSourceAccess(ctx context.Context, arg UserHasSourceAccessParams) (int64, error)

Check if a user has access to a source through any team

func (*Queries) WithTx

func (q *Queries) WithTx(tx *sql.Tx) *Queries

type RemoveTeamMemberParams

type RemoveTeamMemberParams struct {
	TeamID int64 `json:"team_id"`
	UserID int64 `json:"user_id"`
}

type RemoveTeamSourceParams

type RemoveTeamSourceParams struct {
	TeamID   int64 `json:"team_id"`
	SourceID int64 `json:"source_id"`
}

type ResolveAlertHistoryParams added in v0.6.0

type ResolveAlertHistoryParams struct {
	Message sql.NullString `json:"message"`
	ID      int64          `json:"id"`
}

type Session

type Session struct {
	ID        string    `json:"id"`
	UserID    int64     `json:"user_id"`
	ExpiresAt time.Time `json:"expires_at"`
	CreatedAt time.Time `json:"created_at"`
}

type Source

type Source struct {
	ID                int64          `json:"id"`
	Name              string         `json:"name"`
	MetaIsAutoCreated int64          `json:"_meta_is_auto_created"`
	MetaTsField       string         `json:"_meta_ts_field"`
	MetaSeverityField sql.NullString `json:"_meta_severity_field"`
	Host              string         `json:"host"`
	Username          string         `json:"username"`
	Password          string         `json:"password"`
	Database          string         `json:"database"`
	TableName         string         `json:"table_name"`
	Description       sql.NullString `json:"description"`
	TtlDays           int64          `json:"ttl_days"`
	CreatedAt         time.Time      `json:"created_at"`
	UpdatedAt         time.Time      `json:"updated_at"`
}

type SystemSetting added in v0.6.0

type SystemSetting struct {
	Key         string         `json:"key"`
	Value       string         `json:"value"`
	ValueType   string         `json:"value_type"`
	Category    string         `json:"category"`
	Description sql.NullString `json:"description"`
	IsSensitive int64          `json:"is_sensitive"`
	CreatedAt   time.Time      `json:"created_at"`
	UpdatedAt   time.Time      `json:"updated_at"`
}

type Team

type Team struct {
	ID          int64          `json:"id"`
	Name        string         `json:"name"`
	Description sql.NullString `json:"description"`
	CreatedAt   time.Time      `json:"created_at"`
	UpdatedAt   time.Time      `json:"updated_at"`
}

type TeamHasSourceParams

type TeamHasSourceParams struct {
	TeamID   int64 `json:"team_id"`
	SourceID int64 `json:"source_id"`
}

type TeamMember

type TeamMember struct {
	TeamID    int64     `json:"team_id"`
	UserID    int64     `json:"user_id"`
	Role      string    `json:"role"`
	CreatedAt time.Time `json:"created_at"`
}

type TeamQuery

type TeamQuery struct {
	ID           int64          `json:"id"`
	TeamID       int64          `json:"team_id"`
	SourceID     int64          `json:"source_id"`
	Name         string         `json:"name"`
	Description  sql.NullString `json:"description"`
	QueryType    string         `json:"query_type"`
	QueryContent string         `json:"query_content"`
	CreatedAt    time.Time      `json:"created_at"`
	UpdatedAt    time.Time      `json:"updated_at"`
	IsBookmarked bool           `json:"is_bookmarked"`
}

type TeamSource

type TeamSource struct {
	TeamID    int64     `json:"team_id"`
	SourceID  int64     `json:"source_id"`
	CreatedAt time.Time `json:"created_at"`
}

type ToggleQueryBookmarkParams added in v1.1.0

type ToggleQueryBookmarkParams struct {
	ID       int64 `json:"id"`
	TeamID   int64 `json:"team_id"`
	SourceID int64 `json:"source_id"`
}

type UpdateAlertHistoryPayloadParams added in v0.6.0

type UpdateAlertHistoryPayloadParams struct {
	PayloadJson sql.NullString `json:"payload_json"`
	ID          int64          `json:"id"`
}

type UpdateAlertParams added in v0.6.0

type UpdateAlertParams struct {
	Name                 string         `json:"name"`
	Description          sql.NullString `json:"description"`
	QueryType            string         `json:"query_type"`
	Query                sql.NullString `json:"query"`
	ConditionJson        sql.NullString `json:"condition_json"`
	LookbackSeconds      int64          `json:"lookback_seconds"`
	ThresholdOperator    string         `json:"threshold_operator"`
	ThresholdValue       float64        `json:"threshold_value"`
	FrequencySeconds     int64          `json:"frequency_seconds"`
	Severity             string         `json:"severity"`
	LabelsJson           sql.NullString `json:"labels_json"`
	AnnotationsJson      sql.NullString `json:"annotations_json"`
	RecipientUserIdsJson sql.NullString `json:"recipient_user_ids_json"`
	WebhookUrlsJson      sql.NullString `json:"webhook_urls_json"`
	GeneratorUrl         sql.NullString `json:"generator_url"`
	IsActive             int64          `json:"is_active"`
	ID                   int64          `json:"id"`
}

type UpdateSourceParams

type UpdateSourceParams struct {
	Name              string         `json:"name"`
	MetaIsAutoCreated int64          `json:"_meta_is_auto_created"`
	MetaTsField       string         `json:"_meta_ts_field"`
	MetaSeverityField sql.NullString `json:"_meta_severity_field"`
	Host              string         `json:"host"`
	Username          string         `json:"username"`
	Password          string         `json:"password"`
	Database          string         `json:"database"`
	TableName         string         `json:"table_name"`
	Description       sql.NullString `json:"description"`
	TtlDays           int64          `json:"ttl_days"`
	ID                int64          `json:"id"`
}

type UpdateTeamMemberRoleParams

type UpdateTeamMemberRoleParams struct {
	Role   string `json:"role"`
	TeamID int64  `json:"team_id"`
	UserID int64  `json:"user_id"`
}

type UpdateTeamParams

type UpdateTeamParams struct {
	Name        string         `json:"name"`
	Description sql.NullString `json:"description"`
	UpdatedAt   time.Time      `json:"updated_at"`
	ID          int64          `json:"id"`
}

type UpdateTeamSourceQueryParams

type UpdateTeamSourceQueryParams struct {
	Name         string         `json:"name"`
	Description  sql.NullString `json:"description"`
	QueryType    string         `json:"query_type"`
	QueryContent string         `json:"query_content"`
	ID           int64          `json:"id"`
	TeamID       int64          `json:"team_id"`
	SourceID     int64          `json:"source_id"`
}

type UpdateUserParams

type UpdateUserParams struct {
	Email        string       `json:"email"`
	FullName     string       `json:"full_name"`
	Role         string       `json:"role"`
	Status       string       `json:"status"`
	LastLoginAt  sql.NullTime `json:"last_login_at"`
	LastActiveAt sql.NullTime `json:"last_active_at"`
	UpdatedAt    time.Time    `json:"updated_at"`
	ID           int64        `json:"id"`
}

type UpsertSystemSettingParams added in v0.6.0

type UpsertSystemSettingParams struct {
	Key         string         `json:"key"`
	Value       string         `json:"value"`
	ValueType   string         `json:"value_type"`
	Category    string         `json:"category"`
	Description sql.NullString `json:"description"`
	IsSensitive int64          `json:"is_sensitive"`
}

type User

type User struct {
	ID           int64        `json:"id"`
	Email        string       `json:"email"`
	FullName     string       `json:"full_name"`
	Role         string       `json:"role"`
	Status       string       `json:"status"`
	LastLoginAt  sql.NullTime `json:"last_login_at"`
	LastActiveAt sql.NullTime `json:"last_active_at"`
	CreatedAt    time.Time    `json:"created_at"`
	UpdatedAt    time.Time    `json:"updated_at"`
}

type UserHasSourceAccessParams

type UserHasSourceAccessParams struct {
	UserID   int64 `json:"user_id"`
	SourceID int64 `json:"source_id"`
}

Jump to

Keyboard shortcuts

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