config

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Jan 1, 2026 License: MIT Imports: 40 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ArrayWrapFunction

type ArrayWrapFunction struct{}

ArrayWrapFunction 数组包装函数 将单个值包装为数组

func (*ArrayWrapFunction) Transform

func (f *ArrayWrapFunction) Transform(value interface{}, config *models.TransformFunctionConfig) (interface{}, error)

type DurationFormatFunction

type DurationFormatFunction struct{}

DurationFormatFunction 持续时间格式化函数 将秒数转换为 "10s" 格式

func (*DurationFormatFunction) Transform

func (f *DurationFormatFunction) Transform(value interface{}, config *models.TransformFunctionConfig) (interface{}, error)

type PluginMappingConfigLoader

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

PluginMappingConfigLoader 插件映射配置加载器

func NewEmptyPluginMappingConfigLoader

func NewEmptyPluginMappingConfigLoader(logger *zap.Logger) *PluginMappingConfigLoader

NewEmptyPluginMappingConfigLoader 创建一个空的配置加载器(用于测试或配置加载失败时)

func NewPluginMappingConfigLoader

func NewPluginMappingConfigLoader(logger *zap.Logger, configPath string) (*PluginMappingConfigLoader, error)

NewPluginMappingConfigLoader 创建配置加载器

func (*PluginMappingConfigLoader) FindMetricPluginMapping

func (l *PluginMappingConfigLoader) FindMetricPluginMapping(metricName string) *models.MetricPluginMapping

FindMetricPluginMapping 查找指标匹配的插件(支持通配符)

func (*PluginMappingConfigLoader) GetConfig

GetConfig 获取配置(线程安全)

func (*PluginMappingConfigLoader) GetMetricPluginMapping

func (l *PluginMappingConfigLoader) GetMetricPluginMapping(metricName string) *models.MetricPluginMapping

GetMetricPluginMapping 获取指标到插件映射

func (*PluginMappingConfigLoader) GetOutputDestinationMapping

func (l *PluginMappingConfigLoader) GetOutputDestinationMapping(destination string) *models.OutputDestinationMapping

GetOutputDestinationMapping 获取输出目标映射

func (*PluginMappingConfigLoader) GetPluginTemplate

func (l *PluginMappingConfigLoader) GetPluginTemplate(pluginType string) *models.PluginTemplateConfig

GetPluginTemplate 获取插件模板

func (*PluginMappingConfigLoader) GetProcessorTypeMapping

func (l *PluginMappingConfigLoader) GetProcessorTypeMapping(processorType string) string

GetProcessorTypeMapping 获取处理器类型映射

func (*PluginMappingConfigLoader) GetTaskTypeMapping

func (l *PluginMappingConfigLoader) GetTaskTypeMapping(taskType string) *models.TaskTypeMapping

GetTaskTypeMapping 获取任务类型映射

func (*PluginMappingConfigLoader) GetTransformFunction

func (l *PluginMappingConfigLoader) GetTransformFunction(functionName string) *models.TransformFunctionConfig

GetTransformFunction 获取转换函数配置

func (*PluginMappingConfigLoader) Load

func (l *PluginMappingConfigLoader) Load() error

Load 从文件加载配置

func (*PluginMappingConfigLoader) Reload

func (l *PluginMappingConfigLoader) Reload() error

Reload 重新加载配置

type SNMPAgentFormatFunction

type SNMPAgentFormatFunction struct{}

SNMPAgentFormatFunction SNMP Agent 地址格式化函数 将 IP 地址转换为 "udp://ip:161" 格式

func (*SNMPAgentFormatFunction) Transform

func (f *SNMPAgentFormatFunction) Transform(value interface{}, config *models.TransformFunctionConfig) (interface{}, error)

type SNMPFieldAdvancedFormatFunction

type SNMPFieldAdvancedFormatFunction struct{}

SNMPFieldAdvancedFormatFunction SNMP 字段高级格式化函数 将完整的 field 配置(包含 name、oid、is_tag 等)转换为 Telegraf SNMP field 格式

func (*SNMPFieldAdvancedFormatFunction) Transform

func (f *SNMPFieldAdvancedFormatFunction) Transform(value interface{}, config *models.TransformFunctionConfig) (interface{}, error)

type SNMPFieldFormatFunction

type SNMPFieldFormatFunction struct{}

SNMPFieldFormatFunction SNMP 字段格式化函数 将 OID 列表转换为 Telegraf SNMP field 格式

func (*SNMPFieldFormatFunction) Transform

func (f *SNMPFieldFormatFunction) Transform(value interface{}, config *models.TransformFunctionConfig) (interface{}, error)

type SNMPTableFormatFunction

type SNMPTableFormatFunction struct{}

SNMPTableFormatFunction SNMP 表格式化函数 将 table 配置转换为 Telegraf SNMP table 格式

func (*SNMPTableFormatFunction) Transform

func (f *SNMPTableFormatFunction) Transform(value interface{}, config *models.TransformFunctionConfig) (interface{}, error)

type SNMPVersionToStringFunction

type SNMPVersionToStringFunction struct{}

SNMPVersionToStringFunction SNMP 版本转换函数 将整数版本转换为字符串格式:2 -> "2c", 1 -> "1", 3 -> "3"

func (*SNMPVersionToStringFunction) Transform

func (f *SNMPVersionToStringFunction) Transform(value interface{}, config *models.TransformFunctionConfig) (interface{}, error)

type TagAddFunction

type TagAddFunction struct{}

TagAddFunction 标签添加函数 将值添加到 tags 映射中(用于处理 tags.xxx 路径)

func (*TagAddFunction) Transform

func (f *TagAddFunction) Transform(value interface{}, config *models.TransformFunctionConfig) (interface{}, error)

type TelegrafPluginValidator

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

TelegrafPluginValidator Telegraf 插件验证器 用于验证 Telegraf 插件配置的有效性

func NewTelegrafPluginValidator

func NewTelegrafPluginValidator(logger *zap.Logger) *TelegrafPluginValidator

NewTelegrafPluginValidator 创建 Telegraf 插件验证器

func (*TelegrafPluginValidator) ValidateFullTelegrafConfig

func (v *TelegrafPluginValidator) ValidateFullTelegrafConfig(ctx context.Context, configTOML string) error

ValidateFullTelegrafConfig 验证完整的 Telegraf 配置(包含 agent、inputs、processors、outputs)

func (*TelegrafPluginValidator) ValidateMultiplePluginConfigs

func (v *TelegrafPluginValidator) ValidateMultiplePluginConfigs(ctx context.Context, pluginConfigs map[string]map[string]interface{}) error

ValidateMultiplePluginConfigs 验证多个插件配置

func (*TelegrafPluginValidator) ValidatePluginConfig

func (v *TelegrafPluginValidator) ValidatePluginConfig(ctx context.Context, pluginType string, config map[string]interface{}) error

ValidatePluginConfig 验证插件配置 pluginType 格式: "inputs.cpu", "processors.filter", "outputs.prometheus_client" 等 config 是插件的配置 map

type TestStrategyLoader

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

TestStrategyLoader 测试策略加载器 用于从 YAML 文件加载测试策略,便于集中管理测试用例的策略定义

func NewTestStrategyLoader

func NewTestStrategyLoader(logger *zap.Logger, filePath string) (*TestStrategyLoader, error)

NewTestStrategyLoader 创建测试策略加载器

func (*TestStrategyLoader) GetCollectionTask

func (l *TestStrategyLoader) GetCollectionTask(name string) (*models.CollectionTask, error)

GetCollectionTask 获取集合任务策略

func (*TestStrategyLoader) GetGlobalStrategy

func (l *TestStrategyLoader) GetGlobalStrategy(name string) (*models.EnhancedGlobalMetricStrategy, error)

GetGlobalStrategy 获取全局策略

func (*TestStrategyLoader) GetGroupStrategy

func (l *TestStrategyLoader) GetGroupStrategy(name string) (*models.GroupMetricStrategy, error)

GetGroupStrategy 获取分组策略

func (*TestStrategyLoader) GetInstanceStrategy

func (l *TestStrategyLoader) GetInstanceStrategy(name string) (*models.EnhancedInstanceMetricStrategy, error)

GetInstanceStrategy 获取实例策略

func (*TestStrategyLoader) GetOutputRule

func (l *TestStrategyLoader) GetOutputRule(name string) (*models.OutputRule, error)

GetOutputRule 获取输出规则策略

func (*TestStrategyLoader) GetProcessingRule

func (l *TestStrategyLoader) GetProcessingRule(name string) (*models.ProcessingRule, error)

GetProcessingRule 获取处理规则策略

func (*TestStrategyLoader) GetRawStrategy

func (l *TestStrategyLoader) GetRawStrategy(name string) (interface{}, error)

GetRawStrategy 获取原始策略数据(用于调试)

func (*TestStrategyLoader) ListStrategyNames

func (l *TestStrategyLoader) ListStrategyNames() []string

ListStrategyNames 列出所有策略名称

func (*TestStrategyLoader) LoadStrategies

func (l *TestStrategyLoader) LoadStrategies() error

LoadStrategies 加载测试策略

type TransformFunction

type TransformFunction interface {
	Transform(value interface{}, config *models.TransformFunctionConfig) (interface{}, error)
}

TransformFunction 转换函数接口

type TransformFunctionRegistry

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

TransformFunctionRegistry 转换函数注册表

func NewTransformFunctionRegistry

func NewTransformFunctionRegistry() *TransformFunctionRegistry

NewTransformFunctionRegistry 创建转换函数注册表

func (*TransformFunctionRegistry) ApplyTransform

func (r *TransformFunctionRegistry) ApplyTransform(functionName string, value interface{}, config *models.TransformFunctionConfig) (interface{}, error)

ApplyTransform 应用转换函数

func (*TransformFunctionRegistry) Get

Get 获取转换函数

func (*TransformFunctionRegistry) Register

func (r *TransformFunctionRegistry) Register(name string, fn TransformFunction)

Register 注册转换函数

Jump to

Keyboard shortcuts

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