kusto

package
v0.0.5 Latest Latest
Warning

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

Go to latest
Published: Nov 20, 2025 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AuthOptions

type AuthOptions struct {
	TenantID     string `env:"AZURE_TENANT_ID" help:"The Azure tenant ID."`
	ClientID     string `env:"AZURE_CLIENT_ID" help:"The Azure client ID."`
	ClientSecret string `env:"AZURE_CLIENT_SECRET" help:"The Azure client secret."`

	AZCLI bool `env:"AZURE_CLI" help:"Use Azure CLI for authentication."`

	ManagedIdentityResourceID string `env:"AZURE_MANAGED_IDENTITY_RESOURCE_ID" help:"The Azure managed identity resource ID."`
}

AuthOptions provides the authenticate configuration for the Kusto client. TODO: add support for MSI based authentication.

func (AuthOptions) PrepareKustoConnectionStringBuilder

func (a AuthOptions) PrepareKustoConnectionStringBuilder(b *kusto.ConnectionStringBuilder) error

PrepareKustoConnectionStringBuilder setups the connection string for the Kusto client. The authentication method is determined by the provided AuthOptions with the following priority:

- azcli - managed identity - client id/secret

func (AuthOptions) UseAZCLI

func (a AuthOptions) UseAZCLI() bool

func (AuthOptions) UseClientSecret

func (a AuthOptions) UseClientSecret() bool

func (AuthOptions) UseManagedIdentity added in v0.0.4

func (a AuthOptions) UseManagedIdentity() bool

func (AuthOptions) Validate

func (a AuthOptions) Validate() error

type DataFormatString

type DataFormatString string

func (DataFormatString) ToIngestDataFormat

func (d DataFormatString) ToIngestDataFormat() ingest.DataFormat

func (DataFormatString) Validate

func (d DataFormatString) Validate() error

type FileIngestOptions

type FileIngestOptions struct {
	SourceFile   string           `arg:"" type:"existingfile" required:"" help:"The source file to ingest."`
	MappingsFile string           `optional:"" type:"existingfile" help:"The mappings file to use. Optional"`
	Format       DataFormatString `optional:"" enum:"multijson,json,csv" default:"multijson" help:"The format of the source file. Default is multijson."`

	Auth        AuthOptions        `embed:"" prefix:"auth-"`
	KustoTarget KustoTargetOptions `embed:"" prefix:"kusto-"`

	// Retry and timeout configuration
	MaxRetries int `optional:"" default:"3" help:"Maximum number of retries for transient errors (default: 3)."`
	MaxTimeout int `optional:"" default:"60" help:"Maximum timeout in seconds for all retries (default: 60)."`
	// contains filtered or unexported fields
}

FileIngestOptions provides the configuration for ingesting from local file.

func (FileIngestOptions) FileOptions

func (f FileIngestOptions) FileOptions() ([]ingest.FileOption, error)

func (FileIngestOptions) Run

func (f FileIngestOptions) Run(cli cli.Provider) error

type KustoTargetOptions

type KustoTargetOptions struct {
	Endpoint string `required:"" env:"KUSTO_ENDPOINT" help:"The Kusto endpoint to ingest data to."`
	Database string `required:"" env:"KUSTO_DATABASE" help:"The Kusto database to ingest data to."`
	Table    string `required:"" env:"KUSTO_TABLE" help:"The Kusto table to ingest data to."`
}

KustoTargetOptions provides the target configuration for the Kusto client.

type ManagementOptions added in v0.0.4

type ManagementOptions struct {
	Source []byte `arg:"" type:"filecontent" required:"" help:"The source file to execute."`

	Auth        AuthOptions        `embed:"" prefix:"auth-"`
	KustoTarget KustoTargetOptions `embed:"" prefix:"kusto-"`

	// Retry and timeout configuration
	MaxRetries int `optional:"" default:"3" help:"Maximum number of retries for transient errors (default: 3)."`
	MaxTimeout int `optional:"" default:"60" help:"Maximum timeout in seconds for all retries (default: 60)."`
	// contains filtered or unexported fields
}

ManagementOptions provides the configuration for management commands.

func (ManagementOptions) Run added in v0.0.4

func (m ManagementOptions) Run(cli cli.Provider) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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