如何将应用程序的日志从一个容器转移到kubernetes中的另一个容器中

问题描述 投票:0回答:2

我们计划使用Prometheus实施Kubernetes应用程序监视。我们的应用程序在apache中运行,并已部署到kubernetes集群。我们正在开发自定义Apache导出程序,该程序将在与我的应用程序容器相同的POD中运行,并从apache收集指标并将其推送到Prometheus。作为此监视的一部分,我们需要在apache中解析access.log以获得2xx,3xx,4xx和5xx请求的数量。但是我们在Kubernetes中部署的应用程序不会在POD内存储任何日志,但会记录到STDOUT。因此,我可以从kubectl logs命令访问日志。现在,我正在构建的Apache导出器托管在与应用程序容器相同的POD中。现在我的问题是我如何获取应用程序日志(access.log)以显示/访问我的apache导出器容器,以便我可以使用2xx,3xx,4xx和5xx之类的度量标准来解析逻辑和错误。

kubernetes monitoring prometheus
2个回答
0
投票

[使用像loki这样的日志聚合工具,它与kubernetes和grafana很好地集成在一起,然后您可以在grafana仪表板中进行所有解析,然后在其中创建警报


0
投票

Kubernetes将容器的STDOUT分别以/var/logs/containers/var/logs/pods格式存储在每个节点的POD_NAMESPACE_CONTAINER_CONTAINERID.logNAMESPACE_POD_CONTAINERID/CONTAINER/*.log处。一旦将Pod移出节点,这些文件将被删除。

© www.soinside.com 2019 - 2024. All rights reserved.