自监控指标说明
指标类型
在 LoongCollector 中,有如下几种指标类型:
进程级(agent):LoongCollector的整体状态,包含一些Cpu、Mem等信息。
Runner级(runner):LoongCollector内部的独立线程的单例,通常是一整个功能模块,例如file_server、processor_runner等。runner级指标记录的就是这些单例的状态。
配置级(pipeline):每个采集配置的整体状态,例如一条采集配置的总输入、输出、延迟。
组件级(component):每个采集配置运行过程中,会伴随一些组件的使用,例如Batcher、Compressor等。component级指标记录的就是这些组件的状态。
插件级(plugin):每个配置中单个插件的详细指标,例如某个Processor插件的输入、输出、解析失败率。
数据源级(plugin_source):每个配置的数据源的指标,例如文件采集时,每个源文件会有对应的数据,包含文件大小、读取的offset等。
指标格式
LoongCollector的指标为多值Metric结构。具体来说,对于某一个确定的对象(例如一条Pipeline、一个插件、一个数据源),它会存在一条指标记录,里面会以多个label来唯一标识它,并记录多个与它相关的指标值。
下面是一条指标的样例。__name__
是指标类型,__labels__
是标识该条指标对应的对象的标签,__time__
是指标输出的时间戳,__value__
是具体指标的值的map。
指标解释
Agent级指标
Agent级的指标记录了LoongCollector的整体状态,例如Cpu、Mem等,全局唯一。
常见Labels:
Label名
含义
备注
instance_id
LoongCollector 的唯一标识
start_time
LoongCollector 的启动时间
hostname
LoongCollector 所在的机器名
os
LoongCollector 所处的操作系统
os_detail
LoongCollector 的系统详情
version
LoongCollector 的版本
常见Metric Key:
Metric Key
含义
备注
cpu
LoongCollector 的cpu使用核数
memory_used_mb
LoongCollector 的内存使用情况,单位为mb
go_routines_total
LoongCollector Go 部分启动的go routine数量
k8s场景或使用扩展插件时会启动 LoongCollector Go 部分
go_memory_used_mb
LoongCollector Go 部分占用的内存,单位为mb
k8s场景或使用扩展插件时会启动 LoongCollector Go 部分
open_fd_total
LoongCollector 打开的文件描述符数量
pipeline_config_total
LoongCollector 应用的采集配置数量
Runner级指标
Runner 是 LoongCollector 内部的独立线程的单例,通常是一整个功能模块,例如file_server、processor_runner等。
常见Labels:
Label名
含义
备注
runner_name
Runner 的名称
常见的runner有:file_server、processor_runner、flusher_runner、http_sink等
thread_no
Runner 的线程序号
常见Metric Key:
Metric Key
含义
备注
in_events_total
当前统计周期内,进入 Runner 的 event 总数
event 即 PipelineEvent 数据结构,基本可以认为是一条日志
in_size_bytes
当前统计周期内,进入 Runner 的数据大小,单位为字节
这里统计的是进入 Runner 的数据的大小,该数据可能是压缩过的,不能完全等价于 event 的数据大小
last_run_time
Runner 上次执行任务的时间,格式为秒级时间戳
total_delay_ms
Runner 执行任务的总延迟,单位为毫秒
Pipeline级指标
常见Labels:
Label名
含义
备注
pipeline_name
采集配置流水线名称
常见Metric Key:
Metric Key
含义
备注
processor_in_events_total
当前统计周期内,进入 Processor 的 event 总数
processor_in_size_bytes
当前统计周期内,进入 Processor 的数据大小,单位为字节
processor_total_process_time_ms
当前统计周期内,Processor 处理 event 总耗时,单位为毫秒
flusher_in_events_total
当前统计周期内,进入 Flusher 的 event 总数
flusher_in_size_bytes
当前统计周期内,进入 Flusher 的数据大小,单位为字节
flusher_total_package_time_ms
当前统计周期内,Flusher 处理 event 总耗时,单位为毫秒
start_time
Pipeline 启动时间,格式为秒级时间戳
Pipeline更新时,会重新启动,所以该指标可以用于判断 Pipeline 是否成功更新
Component级指标
组件是用于辅助Pipeline运行的对象,它们归属于Pipeline,却对外部不可见(外部可见、可配置的是Plugin)。组件的指标根据组件类型而不同,这里只列举一些重要的。
常见Labels:
Label名
含义
备注
component_name
组件名称
有:batcher,compressor,process_queue,router,sender_queue,serializer等。
pipeline_name
组件关联的采集配置流水线名称
flusher_plugin_id
组件关联的Flusher插件ID
常见Metric Key:
Metric Key
含义
备注
in_events_total
当前统计周期内,进入组件的 event 总数
event 即 PipelineEvent 数据结构,基本可以认为是一条日志
out_events_total
当前统计周期内,流出组件的 event 总数
event 即 PipelineEvent 数据结构,基本可以认为是一条日志
discarded_events_total
当前统计周期内,被丢弃的 event 总数
event 即 PipelineEvent 数据结构,基本可以认为是一条日志
in_items_total
当前统计周期内,进入组件的 item 总数
item 是一些数据结构的统称,需要根据具体组件判断,不一定对应一条日志
out_items_total
当前统计周期内,流出组件的 item 总数
item 是一些数据结构的统称,需要根据具体组件判断,不一定对应一条日志
discarded_items_total
当前统计周期内,被丢弃的 item 总数
item 是一些数据结构的统称,需要根据具体组件判断,不一定对应一条日志
in_size_bytes
当前统计周期内,进入组件的数据大小,单位为字节
这里统计的是进入 Runner 的数据的大小,该数据可能是压缩或特殊处理过的,不能完全等价于 event 的数据大小
out_size_bytes
当前统计周期内,流出组件的数据大小,单位为字节
这里统计的是流出 Runner 的数据的大小,该数据可能是压缩或特殊处理过的,不能完全等价于 event 的数据大小
discarded_size_bytes
当前统计周期内,被丢弃的数据大小,单位为字节
这里统计的是 Runner 丢弃的数据的大小,该数据可能是压缩或特殊处理过的,不能完全等价于 event 的数据大小
total_delay_ms
当前统计周期内,组件聚合/发送等的延时,单位为毫秒
total_process_time_ms
当前统计周期内,组件处理总耗时,单位为毫秒
Plugin级指标
常见Labels:
Label名
含义
备注
plugin_type
插件名
plugin_id
插件id
此ID按Pipeline内插件顺序生成,暂时只用于标识插件,没有其他含义
pipeline_name
插件所属的采集配置流水线名称
常见Metric Key:
Metric Key
含义
备注
in_events_total
当前统计周期内,进入插件的 event 总数
event 即 PipelineEvent 数据结构,基本可以认为是一条日志
out_events_total
当前统计周期内,流出插件的 event 总数
event 即 PipelineEvent 数据结构,基本可以认为是一条日志
discarded_events_total
当前统计周期内,被丢弃的 event 总数
event 即 PipelineEvent 数据结构,基本可以认为是一条日志
in_size_bytes
当前统计周期内,进入插件的数据大小,单位为字节
这里统计的是进入 Runner 的数据的大小,该数据可能是压缩或特殊处理过的,不能完全等价于 event 的数据大小
out_size_bytes
当前统计周期内,流出插件的数据大小,单位为字节
这里统计的是流出 Runner 的数据的大小,该数据可能是压缩或特殊处理过的,不能完全等价于 event 的数据大小
discarded_size_bytes
当前统计周期内,被丢弃的数据大小,单位为字节
这里统计的是 Runner 丢弃的数据的大小,该数据可能是压缩或特殊处理过的,不能完全等价于 event 的数据大小
total_delay_ms
当前统计周期内,插件聚合/发送等的延时,单位为毫秒
total_process_time_ms
当前统计周期内,插件处理总耗时,单位为毫秒
monitor_file_total
当前统计周期内,插件监控的文件总数
仅限文件采集场景
PluginSource级指标
这一级指标是标记数据源信息的,例如对于文件采集,被采集的文件的信息就会记录到PluginSource级指标中
常见Labels:
Label名
含义
备注
file_dev
被采集的文件设备号
仅限文件采集
file_inode
被采集的文件inode号
仅限文件采集
file_name
被采集的文件路径
仅限文件采集
常见Metric Key:
Metric Key
含义
备注
read_offset_bytes
当前读取的文件读到的位置
仅限文件采集
size_bytes
当前读取的文件的大小
仅限文件采集
获取自监控指标
添加自监控指标
Last updated