vmclient

package
v0.0.15 Latest Latest
Warning

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

Go to latest
Published: Dec 16, 2025 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AutoStep

func AutoStep(start, end time.Time) time.Duration

AutoStep 根据查询范围自动生成 step(适用于 VictoriaMetrics)

Types

type DataPoint

type DataPoint struct {
	Timestamp int64
	Value     float64
	Labels    map[string]string
}

DataPoint 数据点

func ConvertToDataPoints

func ConvertToDataPoints(result *QueryResult) []DataPoint

ConvertToDataPoints 将查询结果转换为数据点列表

type Metric

type Metric struct {
	Metric     map[string]string `json:"metric"`
	Values     []float64         `json:"values"`
	Timestamps []int64           `json:"timestamps"`
}

Metric VictoriaMetrics JSON Line Format 指标

type QueryResult

type QueryResult struct {
	Status string     `json:"status"`
	Data   ResultData `json:"data"`
}

QueryResult 查询结果

type Result

type Result struct {
	Metric map[string]string `json:"metric"`
	Values [][]interface{}   `json:"values"` // [[timestamp, value], ...]
}

Result 单个时间序列结果

type ResultData

type ResultData struct {
	ResultType string   `json:"resultType"`
	Result     []Result `json:"result"`
}

ResultData 查询结果数据

type VMClient

type VMClient struct {
	// contains filtered or unexported fields
}

VMClient VictoriaMetrics 客户端

func NewVMClient

func NewVMClient(baseURL string, writeTimeout, queryTimeout time.Duration) *VMClient

NewVMClient 创建 VictoriaMetrics 客户端

func (*VMClient) GetLabelValues

func (c *VMClient) GetLabelValues(ctx context.Context, labelName string, match []string) ([]string, error)

GetLabelValues 获取指定 label 的所有值

func (*VMClient) Query

func (c *VMClient) Query(ctx context.Context, query string) (*QueryResult, error)

Query 即时查询

func (*VMClient) QueryRange

func (c *VMClient) QueryRange(ctx context.Context, query string, start, end time.Time, step time.Duration) (*QueryResult, error)

QueryRange 范围查询 如果 step 为 0,则让 VictoriaMetrics 自动选择合适的步长

func (*VMClient) Write

func (c *VMClient) Write(ctx context.Context, metrics []Metric) error

Write 写入指标(VictoriaMetrics JSON Line Format)

Jump to

Keyboard shortcuts

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