api

package
v0.14.3 Latest Latest
Warning

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

Go to latest
Published: Jan 29, 2024 License: MIT Imports: 26 Imported by: 25

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// DbClient represents the active database connection in a single-session mode
	DbClient *client.Client

	// DbSessions represents the mapping for client connections
	DbSessions *SessionManager

	// QueryStore reads the SQL queries stores in the home directory
	QueryStore *queries.Store
)

Functions

func AnalyzeQuery added in v0.11.10

func AnalyzeQuery(c *gin.Context)

AnalyzeQuery renders query explain plan and analyze profile

func Connect

func Connect(c *gin.Context)

Connect creates a new client connection

func ConnectWithBackend added in v0.9.9

func ConnectWithBackend(c *gin.Context)

ConnectWithBackend creates a new connection based on backend resource

func ConnectWithBookmark added in v0.13.0

func ConnectWithBookmark(id string) (*client.Client, error)

func ConnectWithURL added in v0.13.0

func ConnectWithURL(c *gin.Context) (*client.Client, error)

func DB added in v0.8.0

func DB(c *gin.Context) *client.Client

DB returns a database connection from the client context

func DataExport added in v0.9.9

func DataExport(c *gin.Context)

DataExport performs database table export

func Disconnect added in v0.9.2

func Disconnect(c *gin.Context)

Disconnect closes the current database connection

func ExplainQuery

func ExplainQuery(c *gin.Context)

ExplainQuery renders query explain plan

func GetActivity

func GetActivity(c *gin.Context)

GetActivity renders a list of running queries

func GetAssets added in v0.11.8

func GetAssets(prefix string) http.Handler

func GetBookmarks

func GetBookmarks(c *gin.Context)

GetBookmarks renders the list of available bookmarks

func GetConnectionInfo

func GetConnectionInfo(c *gin.Context)

GetConnectionInfo renders information about current connection

func GetDatabases

func GetDatabases(c *gin.Context)

GetDatabases renders a list of all databases on the server

func GetFunction added in v0.12.0

func GetFunction(c *gin.Context)

GetFunction renders function information

func GetHistory

func GetHistory(c *gin.Context)

GetHistory renders a list of recent queries

func GetHome

func GetHome(prefix string) http.Handler

GetHome renders the home page

func GetInfo

func GetInfo(c *gin.Context)

GetInfo renders the pgweb system information

func GetLocalQueries added in v0.14.0

func GetLocalQueries(c *gin.Context)

func GetObjects added in v0.9.0

func GetObjects(c *gin.Context)

GetObjects renders a list of database objects

func GetSchemas

func GetSchemas(c *gin.Context)

GetSchemas renders list of available schemas

func GetSessions added in v0.8.0

func GetSessions(c *gin.Context)

GetSessions renders the number of active sessions

func GetTable

func GetTable(c *gin.Context)

GetTable renders table information

func GetTableConstraints added in v0.7.0

func GetTableConstraints(c *gin.Context)

GetTableConstraints renders a list of database constraints

func GetTableIndexes

func GetTableIndexes(c *gin.Context)

GetTableIndexes renders a list of database table indexes

func GetTableInfo

func GetTableInfo(c *gin.Context)

GetTableInfo renders a selected table information

func GetTableRows

func GetTableRows(c *gin.Context)

GetTableRows renders table rows

func GetTablesStats added in v0.14.0

func GetTablesStats(c *gin.Context)

GetTablesStats renders data sizes and estimated rows for all tables in the database

func HandleQuery

func HandleQuery(query string, c *gin.Context)

HandleQuery runs the database query

func RequestLogger added in v0.12.0

func RequestLogger(logger *logrus.Logger) gin.HandlerFunc

func RunLocalQuery added in v0.14.0

func RunLocalQuery(c *gin.Context)

func RunQuery

func RunQuery(c *gin.Context)

RunQuery executes the query

func SetLogger added in v0.12.0

func SetLogger(l *logrus.Logger)

TODO: Move this into server struct when it's ready

func SetupMetrics added in v0.13.0

func SetupMetrics(engine *gin.Engine)

func SetupMiddlewares added in v0.6.3

func SetupMiddlewares(group *gin.RouterGroup)

func SetupRoutes

func SetupRoutes(router *gin.Engine)

func SwitchDb added in v0.9.6

func SwitchDb(c *gin.Context)

SwitchDb perform database switch for the client connection

Types

type Backend added in v0.9.9

type Backend struct {
	Endpoint    string
	Token       string
	PassHeaders []string
}

Backend represents a third party configuration source

func (Backend) FetchCredential added in v0.9.9

func (be Backend) FetchCredential(ctx context.Context, resource string, c *gin.Context) (*BackendCredential, error)

FetchCredential sends an authentication request to a third-party service

type BackendCredential added in v0.9.9

type BackendCredential struct {
	DatabaseURL string `json:"database_url"`
}

BackendCredential represents the third-party response

type BackendRequest added in v0.9.9

type BackendRequest struct {
	Resource string            `json:"resource"`
	Token    string            `json:"token"`
	Headers  map[string]string `json:"headers"`
}

BackendRequest represents a payload sent to the third-party source

type Error

type Error struct {
	Message string `json:"error"`
}

func NewError

func NewError(err error) Error

type SessionManager added in v0.12.0

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

func NewSessionManager added in v0.12.0

func NewSessionManager(logger *logrus.Logger) *SessionManager

func (*SessionManager) Add added in v0.12.0

func (m *SessionManager) Add(id string, conn *client.Client)

func (*SessionManager) Cleanup added in v0.12.0

func (m *SessionManager) Cleanup() int

func (*SessionManager) Get added in v0.12.0

func (m *SessionManager) Get(id string) *client.Client

func (*SessionManager) IDs added in v0.12.0

func (m *SessionManager) IDs() []string

func (*SessionManager) Len added in v0.12.0

func (m *SessionManager) Len() int

func (*SessionManager) Remove added in v0.12.0

func (m *SessionManager) Remove(id string) bool

func (*SessionManager) RunPeriodicCleanup added in v0.12.0

func (m *SessionManager) RunPeriodicCleanup()

func (*SessionManager) Sessions added in v0.12.0

func (m *SessionManager) Sessions() map[string]*client.Client

func (*SessionManager) SetIdleTimeout added in v0.12.0

func (m *SessionManager) SetIdleTimeout(timeout time.Duration)

Jump to

Keyboard shortcuts

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