Documentation
¶
Index ¶
- type Aggregation
- type AggregationOptions
- type AggregationTimes
- type Bucket
- type Config
- type FieldNumber
- type FieldString
- type Fields
- type Instance
- type MockInstance
- func (_m *MockInstance) GetAggregation(ctx context.Context, aggregation Aggregation) ([]map[string]interface{}, []string, error)
- func (_m *MockInstance) GetFields(filter string, fieldType string) []string
- func (_m *MockInstance) GetLogs(ctx context.Context, query string, order string, orderBy string, limit int64, ...) ([]map[string]interface{}, []string, int64, int64, []Bucket, error)
- func (_m *MockInstance) GetName() string
- func (_m *MockInstance) GetRawQueryResults(ctx context.Context, query string) ([][]interface{}, []string, error)
- type NewMockInstanceT
- type Row
- type VisualizationRow
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Aggregation ¶
type Aggregation struct {
Query string `json:"query"`
Chart string `json:"chart"`
Times AggregationTimes `json:"times"`
Options AggregationOptions `json:"options"`
}
Aggregation is the structure of the data, which is required to run an aggregation.
type AggregationOptions ¶
type AggregationOptions struct {
SliceBy string `json:"sliceBy"`
SizeByOperation string `json:"sizeByOperation"`
SizeByField string `json:"sizeByField"`
HorizontalAxisOperation string `json:"horizontalAxisOperation"`
HorizontalAxisField string `json:"horizontalAxisField"`
HorizontalAxisOrder string `json:"horizontalAxisOrder"`
HorizontalAxisLimit string `json:"horizontalAxisLimit"`
VerticalAxisOperation string `json:"verticalAxisOperation"`
VerticalAxisField string `json:"verticalAxisField"`
BreakDownBy string `json:"breakDownBy"`
BreakDownByFields []string `json:"breakDownByFields"`
BreakDownByFilters []string `json:"breakDownByFilters"`
}
AggregationOptions is the structure of the options for an aggregation. It contains all the fields, which are required to build the query for the choosen chart type.
type AggregationTimes ¶
AggregationTimes is the structure, which defines the time interval for the aggregation.
type Bucket ¶
Bucket is the struct which is used to represent the distribution of the returned rows for a logs query for the given time range.
type Config ¶
type Config struct {
Address string `json:"address"`
Database string `json:"database"`
Username string `json:"username"`
Password string `json:"password"`
WriteTimeout string `json:"writeTimeout"`
ReadTimeout string `json:"readTimeout"`
MaterializedColumns []string `json:"materializedColumns"`
}
Config is the structure of the configuration for a single klogs instance.
type FieldNumber ¶
FieldNumber is the struct for the nested fields for all JSON fields of a log line, which are containing a number.
type FieldString ¶
FieldString is the struct for the nested fields for all JSON fields of a log line, which are containing a string.
type Instance ¶
type Instance interface {
GetName() string
GetFields(filter string, fieldType string) []string
GetLogs(ctx context.Context, query, order, orderBy string, limit, timeStart, timeEnd int64) ([]map[string]any, []string, int64, int64, []Bucket, error)
GetRawQueryResults(ctx context.Context, query string) ([][]any, []string, error)
GetAggregation(ctx context.Context, aggregation Aggregation) ([]map[string]any, []string, error)
// contains filtered or unexported methods
}
type MockInstance ¶
MockInstance is an autogenerated mock type for the Instance type
func NewMockInstance ¶
func NewMockInstance(t NewMockInstanceT) *MockInstance
NewMockInstance creates a new instance of MockInstance. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
func (*MockInstance) GetAggregation ¶
func (_m *MockInstance) GetAggregation(ctx context.Context, aggregation Aggregation) ([]map[string]interface{}, []string, error)
GetAggregation provides a mock function with given fields: ctx, aggregation
func (*MockInstance) GetFields ¶
func (_m *MockInstance) GetFields(filter string, fieldType string) []string
GetFields provides a mock function with given fields: filter, fieldType
func (*MockInstance) GetLogs ¶
func (_m *MockInstance) GetLogs(ctx context.Context, query string, order string, orderBy string, limit int64, timeStart int64, timeEnd int64) ([]map[string]interface{}, []string, int64, int64, []Bucket, error)
GetLogs provides a mock function with given fields: ctx, query, order, orderBy, limit, timeStart, timeEnd
func (*MockInstance) GetName ¶
func (_m *MockInstance) GetName() string
GetName provides a mock function with given fields:
func (*MockInstance) GetRawQueryResults ¶
func (_m *MockInstance) GetRawQueryResults(ctx context.Context, query string) ([][]interface{}, []string, error)
GetRawQueryResults provides a mock function with given fields: ctx, query
type NewMockInstanceT ¶
type Row ¶
type Row struct {
Timestamp time.Time
Cluster string
Namespace string
App string
Pod string
Container string
Host string
FieldsString FieldString
FieldsNumber FieldNumber
Log string
}
Row is the struct which represents a single row in the logs table of ClickHouse.
type VisualizationRow ¶
VisualizationRow is the structure of a single row for a visualization.