|
本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。 |
Kubernetes 日志
概述
在 Kubernetes 设置中,SUSE Observability 功能分布在不同的 pod 中,每个功能的日志按 pod 和容器存储。您可以使用 kubectl 访问最近的日志,但对于长期存储,建议设置日志聚合。
用于日志记录的 Kubernetes pod
SUSE Observability 日志按 pod 和容器存储。下表显示了访问与特定 SUSE Observability 功能相关的日志的 pod。请注意,实际的 pod 名称将包含数字或随机字符串后缀(例如,stackstate-receiver-5b9d79db86-h2hkz),并且可能还包括在部署 SUSE Observability 时指定的发布名称作为前缀。
|
请注意,存储在 pod 上的日志将定期删除。为了长期访问日志,建议您为您的 Kubernetes 集群设置 日志聚合。 |
| SUSE Observability 功能 | pod 上的日志 |
|---|---|
API(包括拓扑、图表和设置) |
|
数据索引到 Elasticsearch |
|
数据摄取 |
|
事件处理程序 |
|
监控 |
|
状态传播 |
|
同步 |
|
查看健康状态 |
|
您可以使用 kubectl logs 命令访问特定 pod 上的日志。
例如:
$ kubectl logs stackstate-api-0
访问最近的日志
Pod 或容器日志
可以使用 kubectl logs 命令从 Kubernetes 中检索最新日志。检查 您需要监控的 pod 以检索特定日志。
例如:
# Snapshot of logs for all containers of <pod-name>
$ kubectl logs <pod-name> --all-containers=true
# Stream logs for all containers of <pod-name>
$ kubectl logs -f <pod-name> --all-containers=true
# Snapshot of logs for a specific container of <pod-name>
$ kubectl logs -c <container-name> <pod-name>
# Snapshot of logs for previous terminated container of <pod-name>
$ kubectl logs -p -c <container-name> <pod-name>
日志聚合
为了长期存储 SUSE Observability 日志数据,建议您在 Kubernetes 集群上设置日志聚合。这可以使用第三方存储系统,如 Elasticsearch、Splunk 或 Logz.io,以及日志传输工具,如 Logstash 或 Fluentd 来完成。
有关如何完成此操作的更多详细信息,请查看:
-
使用 Fluentd (fluentd.org) 传输日志
-
设置 日志聚合到 Elasticsearch (bitnami.com) 的完整概述