Documentation
¶
Index ¶
- Variables
- func QueryAndProcessMany[T any](ctx context.Context, conn Executor, sql string, ...) error
- func QueryMany[T any](ctx context.Context, conn Executor, sql string, ...) ([]*T, error)
- type BigQueryQueryLogSchema
- type BigQueryScrapper
- func (e *BigQueryScrapper) Close() error
- func (e *BigQueryScrapper) DialectType() string
- func (e *BigQueryScrapper) Executor() *dwhexecbigquery.BigQueryExecutor
- func (s *BigQueryScrapper) FetchQueryLogs(ctx context.Context, from, to time.Time, obfuscator querylogs.QueryObfuscator) (querylogs.QueryLogIterator, error)
- func (e *BigQueryScrapper) IsPermissionError(err error) bool
- func (e *BigQueryScrapper) QueryCatalog(ctx context.Context) ([]*scrapper.CatalogColumnRow, error)
- func (e *BigQueryScrapper) QueryCustomMetrics(ctx context.Context, sql string, args ...any) ([]*scrapper.CustomMetricsRow, error)
- func (e *BigQueryScrapper) QueryDatabases(ctx context.Context) ([]*scrapper.DatabaseRow, error)
- func (e *BigQueryScrapper) QuerySegments(ctx context.Context, sql string, args ...any) ([]*scrapper.SegmentRow, error)
- func (e *BigQueryScrapper) QuerySqlDefinitions(ctx context.Context) ([]*scrapper.SqlDefinitionRow, error)
- func (e *BigQueryScrapper) QueryTableMetrics(ctx context.Context, lastMetricsFetchTime time.Time) ([]*scrapper.TableMetricsRow, error)
- func (e *BigQueryScrapper) QueryTables(ctx context.Context) ([]*scrapper.TableRow, error)
- func (e *BigQueryScrapper) SqlDialect() sqldialect.Dialect
- func (e *BigQueryScrapper) ValidateConfiguration(ctx context.Context) ([]string, error)
- type BigQueryScrapperConf
- type BqQueryTable
- type Executor
- type ShardedTable
Constants ¶
This section is empty.
Variables ¶
View Source
var BaseExpectedPermissions = []string{
"bigquery.datasets.get",
"bigquery.datasets.getIamPolicy",
"bigquery.jobs.create",
"bigquery.jobs.get",
"bigquery.jobs.list",
"bigquery.jobs.listAll",
"bigquery.routines.get",
"bigquery.routines.list",
"bigquery.tables.get",
"bigquery.tables.getData",
"bigquery.tables.list",
"resourcemanager.projects.get",
}
Functions ¶
func QueryAndProcessMany ¶
Types ¶
type BigQueryQueryLogSchema ¶
type BigQueryQueryLogSchema struct {
CreationTime time.Time `bigquery:"creation_time"`
ProjectId bigquery.NullString `bigquery:"project_id"`
ProjectNumber bigquery.NullInt64 `bigquery:"project_number"`
UserEmail bigquery.NullString `bigquery:"user_email"`
JobId bigquery.NullString `bigquery:"job_id"`
JobType bigquery.NullString `bigquery:"job_type"`
StatementType bigquery.NullString `bigquery:"statement_type"`
Priority bigquery.NullString `bigquery:"priority"`
StartTime time.Time `bigquery:"start_time"`
EndTime time.Time `bigquery:"end_time"`
Query bigquery.NullString `bigquery:"query"`
State bigquery.NullString `bigquery:"state"`
ReservationId bigquery.NullString `bigquery:"reservation_id"`
TotalBytesProcessed bigquery.NullInt64 `bigquery:"total_bytes_processed"`
TotalSlotMs bigquery.NullInt64 `bigquery:"total_slot_ms"`
ErrorResult *struct {
Reason bigquery.NullString `bigquery:"reason"`
Message bigquery.NullString `bigquery:"message"`
} `bigquery:"error_result"`
CacheHit bigquery.NullBool `bigquery:"cache_hit"`
DestinationTable *BqQueryTable `bigquery:"destination_table"`
ReferencedTables []*BqQueryTable `bigquery:"referenced_tables"`
Labels []*struct {
Key bigquery.NullString `bigquery:"key"`
Value bigquery.NullString `bigquery:"value"`
} `bigquery:"labels"`
JobStages []*struct {
Name bigquery.NullString `bigquery:"name"`
RecordsRead bigquery.NullInt64 `bigquery:"records_read"`
RecordsWritten bigquery.NullInt64 `bigquery:"records_written"`
Status bigquery.NullString `bigquery:"status"`
} `bigquery:"job_stages"`
TotalBytesBilled bigquery.NullInt64 `bigquery:"total_bytes_billed"`
TransactionId bigquery.NullString `bigquery:"transaction_id"`
ParentJobId bigquery.NullString `bigquery:"parent_job_id"`
TransferredBytes bigquery.NullInt64 `bigquery:"transferred_bytes"`
}
type BigQueryScrapper ¶
type BigQueryScrapper struct {
// contains filtered or unexported fields
}
func NewBigQueryScrapper ¶
func NewBigQueryScrapper(ctx context.Context, conf *BigQueryScrapperConf) (*BigQueryScrapper, error)
func (*BigQueryScrapper) Close ¶
func (e *BigQueryScrapper) Close() error
func (*BigQueryScrapper) DialectType ¶ added in v0.1.8
func (e *BigQueryScrapper) DialectType() string
func (*BigQueryScrapper) Executor ¶
func (e *BigQueryScrapper) Executor() *dwhexecbigquery.BigQueryExecutor
func (*BigQueryScrapper) FetchQueryLogs ¶
func (s *BigQueryScrapper) FetchQueryLogs( ctx context.Context, from, to time.Time, obfuscator querylogs.QueryObfuscator, ) (querylogs.QueryLogIterator, error)
func (*BigQueryScrapper) IsPermissionError ¶ added in v0.1.1
func (e *BigQueryScrapper) IsPermissionError(err error) bool
func (*BigQueryScrapper) QueryCatalog ¶
func (e *BigQueryScrapper) QueryCatalog(ctx context.Context) ([]*scrapper.CatalogColumnRow, error)
func (*BigQueryScrapper) QueryCustomMetrics ¶
func (e *BigQueryScrapper) QueryCustomMetrics(ctx context.Context, sql string, args ...any) ([]*scrapper.CustomMetricsRow, error)
func (*BigQueryScrapper) QueryDatabases ¶
func (e *BigQueryScrapper) QueryDatabases(ctx context.Context) ([]*scrapper.DatabaseRow, error)
func (*BigQueryScrapper) QuerySegments ¶
func (e *BigQueryScrapper) QuerySegments(ctx context.Context, sql string, args ...any) ([]*scrapper.SegmentRow, error)
func (*BigQueryScrapper) QuerySqlDefinitions ¶
func (e *BigQueryScrapper) QuerySqlDefinitions(ctx context.Context) ([]*scrapper.SqlDefinitionRow, error)
func (*BigQueryScrapper) QueryTableMetrics ¶
func (e *BigQueryScrapper) QueryTableMetrics(ctx context.Context, lastMetricsFetchTime time.Time) ([]*scrapper.TableMetricsRow, error)
func (*BigQueryScrapper) QueryTables ¶
func (*BigQueryScrapper) SqlDialect ¶ added in v0.1.8
func (e *BigQueryScrapper) SqlDialect() sqldialect.Dialect
func (*BigQueryScrapper) ValidateConfiguration ¶
func (e *BigQueryScrapper) ValidateConfiguration(ctx context.Context) ([]string, error)
type BigQueryScrapperConf ¶
type BigQueryScrapperConf struct {
dwhexecbigquery.BigQueryConf
Blocklist string
}
type BqQueryTable ¶
type BqQueryTable struct {
ProjectId bigquery.NullString `bigquery:"project_id"`
DatasetId bigquery.NullString `bigquery:"dataset_id"`
TableId bigquery.NullString `bigquery:"table_id"`
}
Click to show internal directories.
Click to hide internal directories.