server

package
v0.35.0 Latest Latest
Warning

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

Go to latest
Published: Sep 27, 2023 License: Apache-2.0 Imports: 52 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
	DownloadRowLimit *int64
}

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, activityClient activity.Client) (*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) BigQueryListDatasets added in v0.31.0

func (*Server) BigQueryListTables added in v0.31.0

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) CreateTrigger added in v0.32.0

CreateTrigger implements runtimev1.RuntimeServiceServer

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) EditInstanceAnnotations added in v0.32.0

EditInstanceAnnotations 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) GetLogs added in v0.32.0

GetLogs implements runtimev1.RuntimeServiceServer

func (*Server) GetResource added in v0.32.0

GetResource implements runtimev1.RuntimeServiceServer

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) IssueDevJWT added in v0.33.0

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) ListResources added in v0.32.0

ListResources implements runtimev1.RuntimeServiceServer

func (*Server) MetricsViewAggregation added in v0.33.2

MetricsViewAggregation implements QueryService.

func (*Server) MetricsViewComparisonToplist added in v0.25.2

MetricsViewComparisonToplist implements QueryService.

func (*Server) MetricsViewRows added in v0.24.4

MetricsViewRows implements QueryService.

func (*Server) MetricsViewTimeRange added in v0.32.0

MetricsViewTimeRange implements QueryService.

func (*Server) MetricsViewTimeSeries

MetricsViewTimeSeries implements QueryService.

func (*Server) MetricsViewToplist

MetricsViewToplist implements QueryService.

func (*Server) MetricsViewTotals

MetricsViewTotals implements QueryService.

func (*Server) OLAPGetTable added in v0.35.0

func (*Server) OLAPListTables added in v0.31.0

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) QueryBatch added in v0.29.1

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) ScanConnectors added in v0.34.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) 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).

func (*Server) WatchFiles added in v0.30.0

WatchFiles implements RuntimeService.

func (*Server) WatchLogs added in v0.32.0

WatchLogs implements runtimev1.RuntimeServiceServer

func (*Server) WatchResources added in v0.32.0

WatchResources implements runtimev1.RuntimeServiceServer

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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