GCP 上的 Kubernetes,更新到 v1.15 后的 Stackdriver 日志记录
Kubernetes on GCP, Stackdriver logging after update to v1.15
我在 GCP 上有一个 Kubernetes 集群,用于托管 Flask 应用程序和一些其他服务。
在将主节点升级到版本 1.15(之前是 1.14.x)之前,我在 Stackdriver 的 GKE 容器日志上看到了来自 flask 应用程序的每个日志,现在我没有得到任何日志。
搜索 release notes 我注意到从 1.15 开始他们:
disabled stackdriver logging agent to prevent node startup failures
我不完全确定是这个原因,但我确定在将主版本和节点版本升级到 1.15 后日志记录停止,应用程序核心中没有代码更改。
我的问题是如何重新激活之前看到的日志?
我实际上找到了解决方案,如发行说明所述,stackdriver 代理实际上在 1.15 中默认禁用。
要再次激活它,您需要在 these instructions 之后编辑集群,在 "Stackdriver Kubernetes Engine Monitoring" 下设置 "System and workload logging and monitoring"
在那之后,我无法再使用旧版 Stackdriver Monitoring,所以我发现我的日志不在资源 "GKE Container" 下,而是在 "Kubernetes Container".
下
我还必须更新每个在 resource.type="container"
上有过滤器的基于日志的指标,将其更改为 resource.type="k8s_container"
我在 GCP 上有一个 Kubernetes 集群,用于托管 Flask 应用程序和一些其他服务。
在将主节点升级到版本 1.15(之前是 1.14.x)之前,我在 Stackdriver 的 GKE 容器日志上看到了来自 flask 应用程序的每个日志,现在我没有得到任何日志。
搜索 release notes 我注意到从 1.15 开始他们:
disabled stackdriver logging agent to prevent node startup failures
我不完全确定是这个原因,但我确定在将主版本和节点版本升级到 1.15 后日志记录停止,应用程序核心中没有代码更改。
我的问题是如何重新激活之前看到的日志?
我实际上找到了解决方案,如发行说明所述,stackdriver 代理实际上在 1.15 中默认禁用。
要再次激活它,您需要在 these instructions 之后编辑集群,在 "Stackdriver Kubernetes Engine Monitoring" 下设置 "System and workload logging and monitoring" 在那之后,我无法再使用旧版 Stackdriver Monitoring,所以我发现我的日志不在资源 "GKE Container" 下,而是在 "Kubernetes Container".
下我还必须更新每个在 resource.type="container"
上有过滤器的基于日志的指标,将其更改为 resource.type="k8s_container"