采集器「华为云-Kafka」配置手册
阅读本文前,请先阅读:
使用本采集器前,必须安装「观测云集成 Core 核心包」及其配套的第三方依赖包
1. 配置结构
本采集器配置结构如下:
字段 |
类型 |
是否必须 |
说明 |
region_projects |
dict |
必须 |
所需采集数据的「地域 - 项目 ID」列表 |
region_projects[#] |
str:list |
必须 |
键值对中: Key 代表地域(如:'cn-north-4' ) Value 代表该地域下所需采集的项目 ID 列表 总表见附录 |
2. 配置示例
Python |
---|
| configs = {
'region_projects':{
'cn-north-4': ['c631f046252d4ebdxxxxxxxxxxx', '15c6ce1c12da4059a8xxxxxxxxxx']
}
}
|
配置过滤器(可选项)
本采集器脚本支持用户自定义过滤器,让用户通过对象属性筛选出目标资源。过滤器函数返回值为 True|False
-
True:目标资源需要被采集。
-
False 目标资源不需要被采集
支持筛选的对象属性:
属性 |
描述 |
instance_name |
实例名称 |
engine |
实例引擎 |
engine_version |
实例引擎类型 |
status |
实例状态 |
instance_id |
实例 ID |
charging_mode |
付费模式,1表示按需计费,0表示包年/包月计费 |
port |
端口 |
type |
实例类型:集群,cluster |
Python |
---|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 | def filter_instance(instance):
'''
采集 实例id 为 xxxx 的实例
'''
instance_id = instance.get('instance_id')
if instance_id in ['xxx']:
return True
return False
###### Do not modify the following contents ######
from guance_integration__runner import Runner
import guance_huaweicloud_kafka__main as kafka_main
import guance_huaweicloud_ces__main as ces_main
@DFF.API('HuaweiCloud Kafka Collection', timeout=3600, fixed_crontab='* * * * *')
def run():
collectors = [
kafka_main.DataCollector(account, collector_configs, filter_instance=filter_instance),
]
Runner(collectors).run()
|
3. 数据上报格式
数据正常同步后,可以在观测云的「基础设施 / 自定义(对象)」中查看数据。
上报的数据示例如下:
JSON |
---|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 | {
"measurement": "huaweicloud_kafka",
"tags": {
"RegionId" : "cn-north-4",
"charging_mode" : "1",
"connect_address" : "192.168.0.161,192.168.0.126,192.168.0.31",
"description" : "",
"engine" : "kafka",
"engine_version" : "2.7",
"instance_id" : "beb33e02-xxxx-xxxx-xxxx-628a3994fd1f",
"kafka_manager_user" : "",
"name" : "beb33e02-xxxx-xxxx-xxxx-628a3994fd1f",
"port" : "9092",
"project_id" : "f5f4c067d68xxxx86e173b18367bf",
"resource_spec_code" : "",
"service_type" : "advanced",
"specification" : "kafka.2u4g.cluster.small * 3 broker",
"status" : "RUNNING",
"storage_type" : "hec",
"user_id" : "e4b27d49128e4bd0893b28d032a2e7c0",
"user_name" : "xxxx"
},
"fields": {
"created_at" : "1693203968959",
"maintain_begin" : "02:00:00",
"maintain_end" : "06:00:00",
"storage_space" : 186,
"total_storage_space" : 300,
"message" : "{实例 JSON 数据}"
}
}
|
部分字段说明如下:
字段 |
类型 |
说明 |
specification |
String |
实例规格。 |
charging_mode |
String |
付费模式,1表示按需计费,0表示包年/包月计费。 |
created_at |
String |
完成创建时间。格式为时间戳,指从格林威治时间 1970年01月01日00时00分00秒起至指定时间的偏差总毫秒数。 |
resource_spec_code |
String |
资源规格 |
maintain_begin |
String |
维护时间窗开始时间,格式为HH:mm:ss |
maintain_end |
String |
维护时间窗结束时间,格式为HH:mm:ss |
tags、fields 中的字段可能会随后续更新有所变动
fields.message 为 JSON 序列化后字符串
X. 附录
请参考华为云官方文档: