server

package
v0.29.0 Latest Latest
Warning

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

Go to latest
Published: Jul 6, 2023 License: Apache-2.0 Imports: 44 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrForbidden = status.Error(codes.Unauthenticated, "action not allowed")

Functions

func HTTPErrorHandler added in v0.17.0

func HTTPErrorHandler(ctx context.Context, mux *gateway.ServeMux, marshaler gateway.Marshaler, w http.ResponseWriter, r *http.Request, err error)

HTTPErrorHandler wraps gateway.DefaultHTTPErrorHandler to map gRPC unknown errors (i.e. errors without an explicit code) to HTTP status code 400 instead of 500.

Types

type ColumnInfo added in v0.15.0

type ColumnInfo struct {
	Name    string
	Type    string
	Unknown int
}

type Options added in v0.16.0

type Options struct {
	HTTPPort        int
	GRPCPort        int
	AllowedOrigins  []string
	ServePrometheus bool
	AuthEnable      bool
	AuthIssuerURL   string
	AuthAudienceURL string
}

type Server

type Server struct {
	runtimev1.UnsafeRuntimeServiceServer
	runtimev1.UnsafeQueryServiceServer
	runtimev1.UnsafeConnectorServiceServer
	// contains filtered or unexported fields
}

func NewServer

func NewServer(ctx context.Context, opts *Options, rt *runtime.Runtime, logger *zap.Logger, limiter ratelimit.Limiter) (*Server, error)

NewServer creates a new runtime server. The provided ctx is used for the lifetime of the server for background refresh of the JWKS that is used to validate auth tokens.

func (*Server) Close added in v0.22.0

func (s *Server) Close() error

Close should be called when the server is done

func (*Server) ColumnCardinality added in v0.22.0

func (*Server) ColumnDescriptiveStatistics added in v0.22.0

func (*Server) ColumnNullCount added in v0.22.0

func (*Server) ColumnNumericHistogram added in v0.22.0

func (*Server) ColumnRollupInterval added in v0.22.0

Metrics/Timeseries APIs

func (*Server) ColumnRugHistogram added in v0.22.0

func (*Server) ColumnTimeGrain added in v0.22.0

func (*Server) ColumnTimeRange added in v0.22.0

func (*Server) ColumnTimeSeries added in v0.22.0

func (*Server) ColumnTopK added in v0.22.0

func (*Server) CreateInstance

CreateInstance implements RuntimeService.

func (*Server) DeleteFile added in v0.15.0

DeleteFile implements RuntimeService.

func (*Server) DeleteFileAndReconcile added in v0.16.0

DeleteFileAndReconcile implements RuntimeService.

func (*Server) DeleteInstance

DeleteInstance implements RuntimeService.

func (*Server) EditInstance added in v0.23.0

EditInstance implements RuntimeService.

func (*Server) EditInstanceVariables added in v0.28.0

EditInstanceVariables implements RuntimeService.

func (*Server) Export added in v0.27.3

func (*Server) ExportTable added in v0.16.0

func (s *Server) ExportTable(w http.ResponseWriter, req *http.Request, pathParams map[string]string)

ExportTable exports a table or view as a flat file and triggers a HTTP download of it. It's mounted as a REST API only, and is not available over gRPC.

TODO: This is a temporary hack that only supports DuckDB. We should add a generic workflow for data export that also supports possibly very large tables.

func (*Server) GCSGetCredentialsInfo added in v0.27.0

func (*Server) GCSListBuckets added in v0.27.0

func (*Server) GCSListObjects added in v0.27.0

func (*Server) GetCatalogEntry added in v0.16.0

GetCatalogEntry implements RuntimeService.

func (*Server) GetFile added in v0.15.0

GetFile implements RuntimeService.

func (*Server) GetInstance

GetInstance implements RuntimeService.

func (*Server) HTTPHandler added in v0.15.0

func (s *Server) HTTPHandler(ctx context.Context, registerAdditionalHandlers func(mux *http.ServeMux)) (http.Handler, error)

HTTPHandler HTTP handler serving REST gateway.

func (*Server) ListCatalogEntries added in v0.16.0

ListCatalogEntries implements RuntimeService.

func (*Server) ListConnectors

ListConnectors implements RuntimeService.

func (*Server) ListExamples added in v0.26.0

ListExamples returns a list of embedded examples

func (*Server) ListFiles added in v0.15.0

ListFiles implements RuntimeService.

func (*Server) ListInstances

ListInstances implements RuntimeService.

func (*Server) MetricsViewComparisonToplist added in v0.25.2

MetricsViewComparisonToplist implements QueryService.

func (*Server) MetricsViewRows added in v0.24.4

MetricsViewRows implements QueryService.

func (*Server) MetricsViewTimeSeries

MetricsViewTimeSeries implements QueryService.

func (*Server) MetricsViewToplist

MetricsViewToplist implements QueryService.

func (*Server) MetricsViewTotals

MetricsViewTotals implements QueryService.

func (*Server) Ping

Ping implements RuntimeService

func (*Server) PutFile added in v0.15.0

PutFile implements RuntimeService.

func (*Server) PutFileAndReconcile added in v0.16.0

PutFileAndReconcile implements RuntimeService.

func (*Server) Query

Query implements QueryService.

func (*Server) Reconcile added in v0.16.0

Reconcile implements RuntimeService.

func (*Server) RefreshAndReconcile added in v0.16.0

RefreshAndReconcile implements RuntimeService.

func (*Server) RenameFile added in v0.15.0

RenameFile implements RuntimeService.

func (*Server) RenameFileAndReconcile added in v0.16.0

RenameFileAndReconcile implements RuntimeService.

func (*Server) S3GetBucketMetadata added in v0.27.0

func (*Server) S3GetCredentialsInfo added in v0.27.0

func (*Server) S3ListBuckets added in v0.27.0

func (*Server) S3ListObjects added in v0.27.0

func (*Server) ServeGRPC added in v0.15.0

func (s *Server) ServeGRPC(ctx context.Context) error

ServeGRPC Starts the gRPC server.

func (*Server) ServeHTTP added in v0.15.0

func (s *Server) ServeHTTP(ctx context.Context, registerAdditionalHandlers func(mux *http.ServeMux)) error

Starts the HTTP server.

func (*Server) TableCardinality added in v0.15.0

Table level profiling APIs.

func (*Server) TableColumns added in v0.22.0

func (*Server) TableRows added in v0.15.0

func (*Server) TriggerRefresh

TriggerRefresh implements RuntimeService.

func (*Server) TriggerSync added in v0.15.0

TriggerSync implements RuntimeService.

func (*Server) UnpackEmpty added in v0.26.0

func (*Server) UnpackExample added in v0.26.0

func (*Server) UploadMultipartFile added in v0.15.0

func (s *Server) UploadMultipartFile(w http.ResponseWriter, req *http.Request, pathParams map[string]string)

UploadMultipartFile implements the same functionality as PutFile, but for multipart HTTP upload. It's mounted only on as a REST API and enables upload of large files (such as data files).

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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