etcd 集成
编辑etcd 集成
编辑此集成用于从 etcd v2 和 v3 实例 收集指标。
它定期从 etcd 指标 API 获取指标。
数据流
编辑对于 etcd v2,指标通过 etcd v2 API 收集,而对于 v3,则从 /metrics
端点获取。
当使用 v3 时,数据集捆绑在 metrics
数据流中,而对于 v2,可用的数据集包括 leader
、self
和 store
。
etcd API 端点
-
/v2/stats/leader
:此端点提供与当前领导状态相关的指标。由leader
数据流使用。 -
/v2/stats/self
:此端点公开的指标侧重于当前节点的状态和性能。由self
数据流使用。 -
/v2/stats/store
:此端点提供与数据存储层相关的指标,包括数据大小、读/写操作和存储效率。由store
数据流使用。 -
/metrics
(v3 API):与更具体的端点不同,此端点提供系统各个方面的全面指标集。由metrics
数据流使用。
etcd v2 API 默认未启用。但是,当使用 etcd v3 及更高版本时,可以通过使用 --enable-v2
标志来启用 etcd v2 API,前提是它受支持。
兼容性
编辑etcd 包已使用 etcd 3.5.x
进行测试。
要求
编辑您需要 Elasticsearch 来存储和搜索您的数据,以及 Kibana 来可视化和管理它。您可以使用我们托管在 Elastic Cloud 上的 Elasticsearch 服务(推荐),或者在您自己的硬件上自行管理 Elastic Stack。
为了从 etcd 摄取数据,您必须知道实例主机。
主机配置格式: http[s]://host:port
主机配置示例: https://127.0.0.1:2379
指标参考
编辑metrics
编辑这是 etcd 包的 metrics
数据集,负责从 etcd v3 实例检索通用指标。
示例
metrics
的示例事件如下所示
{ "@timestamp": "2023-11-30T11:12:42.472Z", "agent": { "ephemeral_id": "422daded-456e-40fe-bd1f-a2913d37b309", "id": "a4b14fa0-9721-4a94-8b4b-bebf87bd1ba4", "name": "docker-fleet-agent", "type": "metricbeat", "version": "8.12.0" }, "data_stream": { "dataset": "etcd.metrics", "namespace": "ep", "type": "metrics" }, "ecs": { "version": "8.11.0" }, "elastic_agent": { "id": "a4b14fa0-9721-4a94-8b4b-bebf87bd1ba4", "snapshot": true, "version": "8.12.0" }, "etcd": { "labels": { "fingerprint": "oB5wpx/JWEU93sgnFX12WX4GmEk=", "grpc_code": "Aborted", "grpc_method": "Authenticate", "grpc_service": "etcdserverpb.Auth", "grpc_type": "unary", "instance": "elastic-package-service-etcd-1:2379", "job": "prometheus" }, "server": { "grpc_handled": { "count": 0 } } }, "event": { "agent_id_status": "verified", "dataset": "etcd.metrics", "duration": 15662716, "ingested": "2023-11-30T11:12:52Z", "module": "etcd" }, "host": { "architecture": "x86_64", "containerized": true, "hostname": "docker-fleet-agent", "id": "d03b51e638e64b05b5cf16c41d2058c0", "ip": [ "172.18.0.7" ], "mac": [ "02-42-AC-12-00-07" ], "name": "docker-fleet-agent", "os": { "codename": "focal", "family": "debian", "kernel": "5.10.102.1-microsoft-standard-WSL2", "name": "Ubuntu", "platform": "ubuntu", "type": "linux", "version": "20.04.6 LTS (Focal Fossa)" } }, "metricset": { "name": "collector", "period": 10000 }, "service": { "address": "http://elastic-package-service-etcd-1:2379/metrics", "type": "prometheus" } }
ECS 字段参考
有关 ECS 字段的详细信息,请参阅以下文档。
导出的字段
字段 | 描述 | 类型 | 单位 | 指标类型 |
---|---|---|---|---|
@timestamp |
事件时间戳。 |
日期 |
||
agent.id |
此代理的唯一标识符(如果存在)。例如:对于 Beats,这将是 beat.id。 |
关键字 |
||
cloud.account.id |
用于在多租户环境中识别不同实体的云帐户或组织 ID。例如:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。 |
关键字 |
||
cloud.availability_zone |
此主机、资源或服务所在的可用区。 |
关键字 |
||
cloud.instance.id |
主机机器的实例 ID。 |
关键字 |
||
cloud.provider |
云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。 |
关键字 |
||
cloud.region |
此主机、资源或服务所在的区域。 |
关键字 |
||
container.id |
唯一的容器 ID。 |
关键字 |
||
data_stream.dataset |
数据流数据集。 |
constant_keyword |
||
data_stream.namespace |
数据流命名空间。 |
constant_keyword |
||
data_stream.type |
数据流类型。 |
constant_keyword |
||
etcd.disk.backend_commit_duration_seconds.histogram |
将后端更改写入磁盘的延迟 |
直方图 |
||
etcd.disk.mvcc_db_total_size.bytes |
MVCC 中存储的数据大小 |
长整型 |
字节 |
计量 |
etcd.disk.wal_fsync_duration_seconds.histogram |
将预写日志写入磁盘的延迟 |
直方图 |
||
etcd.labels.* |
etcd 标签。 |
关键字 |
||
etcd.labels.fingerprint |
etcd 标签的唯一指纹。 |
关键字 |
||
etcd.memory.go_memstats_alloc.bytes |
截至 MemStats Go 的当前分配字节数 |
长整型 |
字节 |
计量 |
etcd.memory.go_memstats_alloc.total.bytes |
截至 MemStats Go 的总分配字节数,包括释放的内存 |
长整型 |
字节 |
计数器 |
etcd.network.client_grpc_received.bytes |
gRPC 接收的总字节数 |
长整型 |
字节 |
计数器 |
etcd.network.client_grpc_sent.bytes |
gRPC 发送的总字节数 |
长整型 |
字节 |
计数器 |
etcd.network.peer_received_bytes_total |
从对等方接收的字节总数。 |
长整型 |
字节 |
计数器 |
etcd.network.peer_received_failures_total |
从对等方接收的失败总数。 |
长整型 |
计数器 |
|
etcd.network.peer_round_trip_time_seconds.histogram |
对等方之间的往返时间直方图。 |
直方图 |
||
etcd.network.peer_sent_bytes_total |
发送到对等方的字节总数。 |
长整型 |
字节 |
计数器 |
etcd.network.peer_sent_failures_total |
从对等方发送的失败总数。 |
长整型 |
计数器 |
|
etcd.process_start_time.sec |
自 Unix 纪元以来的进程启动时间(以秒为单位)。 |
长整型 |
秒 |
计量 |
etcd.server.grpc_handled.count |
接收的 gRPC 请求数 |
长整型 |
计数器 |
|
etcd.server.grpc_started.count |
发送的 gRPC 请求数 |
长整型 |
计数器 |
|
etcd.server.has_leader.count |
集群中是否存在领导者 |
长整型 |
计量 |
|
etcd.server.leader_changes.count |
集群中看到的领导者变更数 |
长整型 |
计数器 |
|
etcd.server.proposals_applied_total |
应用的共识提案总数。 |
长整型 |
计量 |
|
etcd.server.proposals_committed.count |
提交的共识提案数 |
长整型 |
计量 |
|
etcd.server.proposals_failed.count |
失败的共识提案数 |
长整型 |
计数器 |
|
etcd.server.proposals_pending.count |
待处理的共识提案数 |
长整型 |
计量 |
|
etcd.store.expires_total |
过期键的总数。 |
长整型 |
计数器 |
|
etcd.store.reads_total |
此成员本地的(get/getRecursive)读取操作总数。 |
长整型 |
计数器 |
|
etcd.store.watchers |
当前活跃的观察者计数。 |
长整型 |
计量 |
|
etcd.store.writes_total |
此成员看到的写入操作总数(例如,set/compareAndDelete)。 |
长整型 |
计数器 |
|
event.dataset |
事件数据集 |
constant_keyword |
||
event.module |
事件模块 |
constant_keyword |
||
host.name |
主机的名称。它可以包含 Unix 系统上 hostname 返回的值、完全限定域名 (FQDN) 或用户指定的名称。建议的值是主机的小写 FQDN。 |
关键字 |
||
service.address |
从中收集此服务数据的地址。这应该是 URI、网络地址(ipv4:port 或 [ipv6]:port)或资源路径(套接字)。 |
关键字 |
leader
编辑这是 etcd 包的 leader
数据集,负责从 etcd v2 实例检索有关领导者的通用指标。
示例
leader
的示例事件如下所示
{ "@timestamp": "2017-10-12T08:05:34.853Z", "etcd": { "leader": { "follower": { "leader": "91bc3c398fb3c146", "latency": { "ms": 0.001169 }, "failed_operations": 0, "id": "8211f1d0f64f3269", "success_operations": 5 } }, "api_version": "2" }, "event": { "dataset": "etcd.leader", "duration": 115000, "module": "etcd" }, "metricset": { "name": "leader" }, "service": { "address": "127.0.0.1:2379", "type": "etcd" } }
ECS 字段参考
有关 ECS 字段的详细信息,请参阅以下文档。
导出的字段
字段 | 描述 | 类型 |
---|---|---|
@timestamp |
事件时间戳。 |
日期 |
data_stream.dataset |
数据流数据集。 |
constant_keyword |
data_stream.namespace |
数据流命名空间。 |
constant_keyword |
data_stream.type |
数据流类型。 |
constant_keyword |
etcd.api_version |
用于指标检索的 Etcd API 版本 |
关键字 |
etcd.leader.follower.failed_operations |
失败的 Raft RPC 请求 |
长整型 |
etcd.leader.follower.id |
跟随者的 ID |
关键字 |
etcd.leader.follower.latency.ms |
比例浮点型 |
|
etcd.leader.follower.leader |
实际领导者的 ID |
关键字 |
etcd.leader.follower.success_operations |
成功的 Raft RPC 请求 |
长整型 |
event.dataset |
事件数据集 |
constant_keyword |
event.module |
事件模块 |
constant_keyword |
self
编辑这是 etcd 包的 self
数据集,负责从 etcd v2 实例检索有关自身的通用指标。
示例
self
的示例事件如下所示
{ "@timestamp": "2017-10-12T08:05:34.853Z", "etcd": { "api_version": "2", "self": { "id": "8e9e05c52164694d", "leaderinfo": { "leader": "8e9e05c52164694d", "start_time": "2019-03-25T18:00:33.457653099+01:00", "uptime": "20.338096195s" }, "name": "default", "recv": { "append_request": { "count": 0 }, "bandwidth_rate": 0, "pkg_rate": 0 }, "send": { "append_request": { "count": 0 }, "bandwidth_rate": 0, "pkg_rate": 0 }, "start_time": "2019-03-25T18:00:32.755273186+01:00", "state": "StateLeader" } }, "event": { "dataset": "etcd.self", "duration": 115000, "module": "etcd" }, "metricset": { "name": "self" }, "service": { "address": "127.0.0.1:2379", "type": "etcd" } }
ECS 字段参考
有关 ECS 字段的详细信息,请参阅以下文档。
导出的字段
字段 | 描述 | 类型 |
---|---|---|
@timestamp |
事件时间戳。 |
日期 |
data_stream.dataset |
数据流数据集。 |
constant_keyword |
data_stream.namespace |
数据流命名空间。 |
constant_keyword |
data_stream.type |
数据流类型。 |
constant_keyword |
etcd.api_version |
用于指标检索的 Etcd API 版本 |
关键字 |
etcd.self.id |
成员的唯一标识符 |
关键字 |
etcd.self.leaderinfo.leader |
当前领导者成员的 ID |
关键字 |
etcd.self.leaderinfo.start_time |
此节点启动的时间 |
关键字 |
etcd.self.leaderinfo.uptime |
领导者担任领导者的时间量 |
关键字 |
etcd.self.name |
此成员的名称 |
关键字 |
etcd.self.recv.append_request.count |
此节点已处理的追加请求数 |
整数 |
etcd.self.recv.bandwidth_rate |
此节点每秒接收的字节数(仅限跟随者) |
比例浮点型 |
etcd.self.recv.pkg_rate |
此节点每秒接收的请求数(仅限跟随者) |
比例浮点型 |
etcd.self.send.append_request.count |
此节点已发送的请求数 |
整数 |
etcd.self.send.bandwidth_rate |
此节点每秒发送的字节数(仅限领导者)。此值在单成员集群中未定义。 |
比例浮点型 |
etcd.self.send.pkg_rate |
此节点每秒发送的请求数(仅限领导者)。此值在单成员集群中未定义。 |
比例浮点型 |
etcd.self.start_time |
此节点启动的时间 |
关键字 |
etcd.self.state |
领导者或跟随者 |
关键字 |
event.dataset |
事件数据集 |
constant_keyword |
event.module |
事件模块 |
constant_keyword |
store
编辑这是 etcd 包的 store
数据集,负责从 etcd v2 实例检索有关存储的通用指标。
示例
store
的示例事件如下所示
{ "@timestamp": "2017-10-12T08:05:34.853Z", "etcd": { "api_version": "2", "store": { "compare_and_delete": { "fail": 0, "success": 0 }, "compare_and_swap": { "fail": 0, "success": 0 }, "create": { "fail": 0, "success": 1 }, "delete": { "fail": 0, "success": 0 }, "expire": { "count": 0 }, "gets": { "fail": 4, "success": 2 }, "sets": { "fail": 0, "success": 12 }, "update": { "fail": 0, "success": 0 }, "watchers": 0 } }, "event": { "dataset": "etcd.store", "duration": 115000, "module": "etcd" }, "metricset": { "name": "store" }, "service": { "address": "127.0.0.1:2379", "type": "etcd" } }
ECS 字段参考
有关 ECS 字段的详细信息,请参阅以下文档。
导出的字段
字段 | 描述 | 类型 |
---|---|---|
@timestamp |
事件时间戳。 |
日期 |
data_stream.dataset |
数据流数据集。 |
constant_keyword |
data_stream.namespace |
数据流命名空间。 |
constant_keyword |
data_stream.type |
数据流类型。 |
constant_keyword |
etcd.api_version |
用于指标检索的 Etcd API 版本 |
关键字 |
etcd.store.compare_and_delete.fail |
整数 |
|
etcd.store.compare_and_delete.success |
整数 |
|
etcd.store.compare_and_swap.fail |
整数 |
|
etcd.store.compare_and_swap.success |
整数 |
|
etcd.store.create.fail |
整数 |
|
etcd.store.create.success |
整数 |
|
etcd.store.delete.fail |
整数 |
|
etcd.store.delete.success |
整数 |
|
etcd.store.expire.count |
整数 |
|
etcd.store.gets.fail |
整数 |
|
etcd.store.gets.success |
整数 |
|
etcd.store.sets.fail |
整数 |
|
etcd.store.sets.success |
整数 |
|
etcd.store.update.fail |
整数 |
|
etcd.store.update.success |
整数 |
|
etcd.store.watchers |
整数 |
|
event.dataset |
事件数据集 |
constant_keyword |
event.module |
事件模块 |
constant_keyword |
更新日志
编辑更新日志
版本 | 详细信息 | Kibana 版本 |
---|---|---|
1.3.0 |
增强功能 (查看拉取请求) |
8.13.0 或更高版本 |
1.2.0 |
增强功能 (查看拉取请求) |
8.13.0 或更高版本 |
1.1.0 |
增强 (查看拉取请求) |
8.8.0 或更高版本 |
1.0.1 |
增强 (查看拉取请求) |
8.8.0 或更高版本 |
1.0.0 |
增强 (查看拉取请求) |
8.8.0 或更高版本 |
0.8.0 |
增强 (查看拉取请求) |
— |
0.7.0 |
增强 (查看拉取请求) |
— |
0.6.1 |
错误修复 (查看拉取请求) |
— |
0.6.0 |
增强 (查看拉取请求) |
— |
0.5.0 |
增强 (查看拉取请求) |
— |
0.4.0 |
增强 (查看拉取请求) |
— |
0.3.1 |
增强 (查看拉取请求) |
— |
0.3.0 |
增强 (查看拉取请求) |
— |
0.2.0 |
增强 (查看拉取请求) |
— |
0.1.1 |
增强 (查看拉取请求) |
— |
0.1.0 |
增强 (查看拉取请求) |
— |
0.0.1 |
增强 (查看拉取请求) |
— |