sdk

package module
v0.0.0-...-bf3c2a8 Latest Latest
Warning

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

Go to latest
Published: Aug 24, 2026 License: GPL-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// PluginNameLen 是协议中插件名字段的固定字节长度,不足部分用 0 填充。
	PluginNameLen = 64
	// DefaultSocketPath 是 ocm-agent 监听的 Unix 域套接字默认路径。
	DefaultSocketPath = "/opt/ocm-agent/var/chan.sock"
	// MaxDataLen 是单次推送数据的最大字节数(200KB)。
	MaxDataLen = 200 * 1024
)

协议常量定义。

协议消息格式如下:

+----------------------+-----------------------+-------------------+
| 插件名 (PluginNameLen)| 数据长度 (4 字节大端)  | 数据 (变长)        |
+----------------------+-----------------------+-------------------+

Variables

View Source
var SocketPath = DefaultSocketPath

SocketPath 是当前用于连接 ocm-agent 的 Unix 域套接字路径。 默认值为 DefaultSocketPath,导出该变量主要是为了在单元测试中 临时替换为临时目录下的 socket。

Functions

func Push

func Push(pluginName string, data []byte) error

Push 将 data 通过 Unix 域套接字推送给本机 ocm-agent。

入参校验规则:

  • data 不可为空,且长度不能超过 MaxDataLen;
  • pluginName 不可为空,且字节长度不能超过 PluginNameLen。

返回值:成功返回 nil;任一步骤失败均返回带上下文的错误。

func PushMetricsData

func PushMetricsData(pluginName string, version string, attr map[string]string, metricData *agent.MetricsData) error

PushMetricsData 将指标数据封装为 PluginData 并经 zlib 压缩后推送给 ocm-agent。

参数:

  • pluginName: 插件名,会作为协议头部插件名字段,同时填入 PluginData.Name;
  • version: 插件版本号,填入 PluginData.Version;
  • metricData: 待上报的指标数据,将被 protobuf 序列化后放入 PluginData.Data。

返回值:成功返回 nil;序列化、压缩或网络发送任一环节失败均返回带上下文的错误。

Types

This section is empty.

Jump to

Keyboard shortcuts

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